另一个对象的值作为Javascript中另一个关联数组中的值

时间:2014-12-27 20:54:44

标签: javascript

所以我有一个名为xyz的数组,其中包含键a和b。 我想将这些输入到另一个数组中,如下所示:

seats =[{ 
        name : xyz.a.
        address: xyz.b}];

然而xyz.a被存储为一个对象而不是它在seat.name中的值,并且在我使用console.log时打印undefined

我希望将xyz.a存储为其值,以便seat.name提供存储在xyz.a中的值

2 个答案:

答案 0 :(得分:1)

Javascript没有变量引用或别名。将变量分配给另一个变量或对象时,它会在赋值时获取其值,但不会保留指向原始位置的链接。

如果你想要总是获得变量当前值的东西,你必须使用一个函数:

seats = [ {
    name: function() { return xyz.a; },
    address: function() { return xyz.b; }
}];

然后你会调用函数来得到你想要的东西:

seats[0].name();

答案 1 :(得分:0)

假设xyz是像

这样的对象
var xyz = {
    a: 'foo',
    b: 'bar'
};

然后,您可以使用

var seats = { 
    name: xyz.a,
    address: xyz.b
};