es6的Proxy 有13个种方法,我们可以将其编程故事, 下面以我和我儿子的一组对话,来协助记忆。
好好看看我的这段话: 这就是编故事,形成画面记忆。
吴天宇放学回家,进门就说,
吴天宇: 爸爸我饿了。
我: 儿子我给你准备了一个零食仓库 (construct), 里面什么都有 (所有构造函数都有 constructor, constructor 是对象自带的一个属性,是名词,用于标识对象的构造来源。 new出来,这里可以看着动词 construct ,proxy 就是拦截,是带动作的)。
吴天宇:爸爸那你随便给我拿点吃的吧
我: 拿了一颗草莓给儿子。 (get)
吴天宇:爸爸草莓坏了,扔掉吧。
我: 扔掉了所有坏了的草莓 (deleteProperty), (deleteProperty 主要就是为了搞定 delete
操作符,记忆方法: 为了与关键词delete有区别,所以为 delete
Property
)
吴天宇: 爸爸明天春游,今天老师给了我一个面包,帮我放我的零食仓库,明天吃
我: 把面包放进去 (set)
吴天宇: 草莓吃完了,爸爸我还饿,家里有火腿肠吗 (has)? 有的话你帮我做个火腿肠吃吧。
我: 有火腿肠,拿出火腿肠, 去厨房给吴天宇做烤肠,烤熟了给吴天宇
吴天宇: 爸爸你做的火腿肠是什么牌子的?
我: 你最爱的双汇火腿肠 ( getPrototypeOf)
吴天宇: 爸爸可以把这个火腿肠的牌子 换成 金锣 ( setPrototypeOf), (换成就是set)
我: 不可以换了, 我们只能查看火腿肠的描述 (getOwnPropertyDescriptor ) (这里不是 property 而是 OwnProperty 可以记忆为 自己拥有的属性,而不是是个属性就行,必须是自己拥有的)
吴天宇: 那我看一下火腿肠的生产日期和保质期, 爸爸这个火腿肠要过期了,我把上产日期改一下 ( defineProperty)
我: 不能改了,改了也是假的,儿子吃饱了么,今天拿了几次零食 (apply)
吴天宇: 2次了, 爸爸我看零食仓库东西不多了啊,还可以再加点 (isExtensible)
我: 好的,那我把冰箱的水果都给你放进去 , 现在满了,已经很多了吧,关零食仓库门(preventExtensions)
吴天宇: 好的,爸爸,那现在零食仓库有多少种零食了啊 (ownKyes)
我: 有好多了,你可以吃很久了
主要帮自己记忆,同时也希望对大家有帮助
-
« 上一篇:
css3文字渐变色