1

我有以下代码:

 pub.call_response = function() {
            return {
                units: [
                    {
                        test_attributes: {

                        }

                    }
                ]
            };
        };

我有一组变量需要用于键/值,test_attributes如下所示:

var key1 = something;
var key2 = something;
var value1 = something;
var value2 = something;

pub.call_response = function() {
                return {
                    units: [
                        {
                            test_attributes: {
                               key1: value1,
                               key2: value2
                            }

                        }
                    ]
                };
            };

显然,这是行不通的。有没有人对如何做这样的事情有任何想法?使用 jQuery 是可以接受的。

谢谢!

4

5 回答 5

7

你应该做

var key1 = something;
var key2 = something;
var value1 = something;
var value2 = something;

var attributes = {};

attributes[key1] = value1;
于 2012-04-11T13:16:47.433 回答
1

要引用prop对象obj(即prop.obj)上的属性,您还可以使用方括号[]

因此,以下是等价的:

var x = prop.obj;

var key = "obj";
var t = prop[key];
于 2012-04-11T13:16:39.273 回答
1
var key1 = something;
var key2 = something;
var value1 = something;
var value2 = something;

pub.call_response = function() {
    var item = {
        test_attributes: {}
    };
    item.test_attributes[key1] = value1;
    item.test_attributes[key2] = value2;

    var obj = {
        units: [item]
    };

    return obj;
};
于 2012-04-11T13:17:29.563 回答
0
var key1 = something;
var key2 = something;
var value1 = something;
var value2 = something;

pub.call_response = function() {
    var u    = {};
    u[key1]  = value1;
    u[key2]  = value2;

    return {
         units: [{
             test_attributes : u
         }]
    };
};
于 2012-04-11T13:17:48.440 回答
-1
var obj = {};
obj[key1] = value1;
obj[key2] = value2;

return {
    units: [ { test_attributes: obj } ]
};
于 2012-04-11T13:18:51.070 回答