// 定义几个方法
function add(a){
return a+1;
}
function decrease(a){
return a-1;
}
function double(a){
return a*2;
}
function chain(value){
const handler = {
get:function(obj,prop){
// obj 指向传入的对象{} prop指向传入的方法名字
if(typeof windos[prop] === 'function'){
obj.value = window[prop](obj.value);
return proxy;
}
const proxy = new Proxy({value},handler)
return proxy;
}
}
}
console.log(chain(3).add.double) //打印的value为8