标签:obj property content 一点 prope object 理解 font ret
最近在Javascript的设计编程中,用到的那个单例模式,感觉就类似一种代理的思想,单例模式就是:
function getSingle(fn){ var result; return function(){ return result || (result = fn.apply(this,arguments)); } }
任何在getSingle传入方法的函数,都会具有单例模式,就类似于代理的思想,函数的执行得先过getSingle,它里面有个result的缓存,有缓存返回缓存,但是跟ES6的Proxy还是有点区别。
var proxy = new Proxy(target, handler);
target是代理的对象,handler是参数,也是一个对象,定制拦截行为。
var proxy = new Proxy({}, { get: function(target, property) { return 35; } }); let obj = Object.create(proxy); obj.time // 35
看这段代码:obj直接原型继承了代理对象proxy,那么访问obj的属性时,如果自身没有属性,就会访问原型链。
Proxy代理的用处很多,方法get,set,apply,has,construct等方法,多看些大神的用法,后面慢慢孰能生巧吧,知道这个东西是干嘛的,以后怎么用还得实际项目或者练习中进行巩固啦。
【完】
标签:obj property content 一点 prope object 理解 font ret
原文地址:https://www.cnblogs.com/tangjiao/p/9939762.html