使用变量对象属性JS

时间:2018-02-16 05:00:40

标签: javascript object properties

我想知道是否有办法引用一个对象属性的变量指针。例如,在以下代码中:

function foo(){
    this.x=0;
    this.y=0;
    this.bar=0;
}
var attr={x:"100",y:"42"};
var test=new foo();
for(var key in attr){
    test.key=attr[key];
}
console.log(test.x);
console.log(text.y);

我希望这个程序输出100和42,以显示test.x和test.y已经使用上面的方法设置,可以设置对象的任意属性。这是可能吗?在此先感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

function foo() {
  this.x = 0;
  this.y = 0;
  this.bar = 0;
}

var attr = {
  x: 100,
  y: 42
};

// Your code:
/*var test = new foo();
for(var key in attr) {
    test.key=attr['key'];
}*/

// Using Object.assign()
var test = Object.assign({}, new foo(), attr);

console.log(test.x);
console.log(test.y);

答案 1 :(得分:1)

请检查:



function foo(){
    this.x=0;
    this.y=0;
    this.bar=0;
}
var attr={x:"100",y:"42"};
var test=new foo();
for(var key in attr){
    test[key] = attr[key];
}
console.log(test.x);
console.log(test.y);