Вопрос по json, javascript, ajax – массив json: как создавать новые элементы массива?

6

Моя цель - получить массив 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   ответа
1
newObject = {
 "first": "John",
 "last": "Doe",
 "age": 39,
 "sex": "M",
 "salary": 70000,
 "registered": true,
 "interests": [ "Reading", "Mountain Biking", "Hacking" ]
}
8
var args = [{ name: 'test', value: 1 }, { key: 'test2', value: 2}];

в котором каждый элемент является ассоциированным массивом (= хэш, = объект).

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

... вы помещаете (под) массив в родительский массив. Это не то же самое, что ассоциативный массив. Теперь у вас есть гетерогенный массив.

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

... Это помещает связанный массив в ваш массив верхнего уровня. Это то, что вы хотите. Лука прав.

спасибо за хорошее объяснение .... Andre Gallo
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});
пожалуйста, узнайте, как форматировать код (в конце верхнего угла поля ввода есть вопросительный знак :-)
28
dependentProperties.push({name: depName, value: depValue});
Синтаксис смотрит вам прямо в лицо!

Похожие вопросы