在普通对象中,我们可以推送到普通数组值,如 obj.l =[]; obj.l.push("测试")
示例。
var prxy = new Proxy({} , {
get(target, name){
return target[name]
},
set(target,name, value){
target[name] = value;
return true;
}
})
prxy.h = {test : "test"}
>> {test: "test"}
prxy.h
>>{test: "test"}
prxy.h.push("test")
>>VM2724:1 Uncaught TypeError: prxy.h.push is not a function
at <anonymous>:1:8
最佳答案
您不能在对象上使用数组方法。无论如何,这里确实没有意义。当您只需将值附加到对象时,就没有理由使用 push()
:
prxy.h.someKey = someValue;
或者使用动态 key :
var dynamicKey = "car";
prxy.h[dynamicKey] = someValue;
关于javascript - 如何在 Javascript 中推送代理对象中的数组值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46427496/