json数组:如何创建新的数组元素?

时间:2009-07-01 03:10:35

标签: javascript ajax json

我的目标是获得像这样的json数组:

var args = [{ name: 'test', value: 1 }, { key: 'test2', value: 2}];

如何获得以下代码来构建类似上面的数组?

this.dependentProperties = []; //array
function addDependentProperty(depName, depValue) {    
    dependentProperties.push(new Array(depName, depValue));
} 

通过使用push方法,我最终得到了像这样的json符号:

args:{[["test1",1],["test2",2]]}

4 个答案:

答案 0 :(得分:28)

dependentProperties.push({name: depName, value: depValue});

答案 1 :(得分:8)

var args = [{ name: 'test', value: 1 }, { key: 'test2', value: 2}];

...这是一个数组,其中每个元素都是一个关联数组(= hash,= object)。

dependentProperties.push(new Array(depName, depValue));

...您正在将(子)数组推送到父数组中。这与关联数组不同。你现在有一个异构数组。

dependentProperties.push({name: depName, value: depValue});

...这会将关联数组推送到您的顶级数组中。这就是你想要的。卢卡是对的。

答案 2 :(得分:1)

newObject = {
 "first": "John",
 "last": "Doe",
 "age": 39,
 "sex": "M",
 "salary": 70000,
 "registered": true,
 "interests": [ "Reading", "Mountain Biking", "Hacking" ]
}

答案 3 :(得分:0)

var myarray = [];
var myJSON = "";

for (var i = 0; i < 10; i++) {

    var item = {
        "value": i,
        "label": i
    };

    myarray.push(item);
}

myJSON = JSON.stringify({myarray: myarray});