我正在尝试使用这里的一些对象,并希望有一个简单的读/写功能。
我的对象将包含更多对象,因此问题在于访问子对象属性。我可以读得很简单,但是当我尝试更改属性值时,我只更改函数varible target,因此它不再指向对象。
var OBJ = {
name:"",
obj2:
{
name:"Test",
something:"text"
}
};
function readFromObject(target){
console.log(target);
}
function writeToObject(target,val){
target = val;
// More code
}
readFromObject(OBJ.obj2.name);
writeToObject(OBJ.obj2.name,"newVal");
readFromObject(OBJ.obj2.name);
希望有人得到我想做的事。
答案 0 :(得分:2)
看起来你只想制作一个通用的setter和一个通用的getter。
你可以这样做:
function readFromObject(obj, property) {
console.log(obj[property]);
}
function writeToObject(obj, property, value) {
obj[property] = value;
// More code
}
readFromObject(OBJ.obj2, 'name');
writeToObject(OBJ.obj2, 'name', 'newVal');
readFromObject(OBJ.obj2, 'name');