JavaScript push to array



Как переместить новые значения в следующий массив?



json = {"cool":"34.33","alsocool":"45454"}


пробовал json.push("coolness":"34.33");, но это не сработало.

690   5  

5 ответов:

Это не массив.

var json = {"cool":"34.33","alsocool":"45454"};
json.coolness = 34.33;

или

var json = {"cool":"34.33","alsocool":"45454"};
json['coolness'] = 34.33;

вы можете сделать это как массив, но это будет другой синтаксис (и это почти наверняка не то, что вы хотите)

var json = [{"cool":"34.33"},{"alsocool":"45454"}];
json.push({"coolness":"34.33"});

обратите внимание, что это имя переменной сильно вводит в заблуждение, как здесь нет JSON. Я бы назвал это по-другому.

var array = new Array(); // or the shortcut: = []
array.push ( {"cool":"34.33","also cool":"45454"} );
array.push (  {"cool":"34.39","also cool":"45459"} );

ваша переменная является объектом javascript {} не массив [].

вы могли бы сделать:

var o = {}; // or the longer form: = new Object()
o.SomeNewProperty = "something";
o["SomeNewProperty"] = "something";

и

var o = { SomeNewProperty: "something" };
var o2 = { "SomeNewProperty": "something" };

позже вы добавите эти объекты в свой массив:array.push (o, o2);

и JSON - это просто строковое представление объекта JavaScript, таким образом:

var json = '{"cool":"34.33","alsocool":"45454"}'; // is JSON
var o = JSON.parse(json); // is a javascript object
json = JSON.stringify(o); // is JSON again

это объект, а не массив. Так что вы бы сделали:

var json = { cool: 34.33, alsocool: 45454 };
json.supercool = 3.14159;
console.dir(json);
object["property"] = value;

или

object.property = value;

объект и массив в JavaScript различны с точки зрения использования. Лучше всего, если вы понимаете их:

объект против массива: JavaScript

использовать push() функции для добавления в массив:

// initialize array
var arr = [
    "Hi",
    "Hello",
    "Bonjour"
];

// append new value to the array
arr.push("Hola");

теперь массив

var arr = [
    "Hi",
    "Hello",
    "Bonjour"
    "Hola"
];

// append multiple values to the array
arr.push("Salut", "Hey");

теперь массив

var arr = [
    "Hi",
    "Hello",
    "Bonjour"
    "Hola"
    "Salut"
    "Hey"
];

// display all values
for (var i = 0; i < arr.length; i++) {
    console.log(arr[i]);
}

выведет:

Hi
Hello
Bonjour
Hola 
Salut
Hey

обновление

если вы хотите добавить элементы из одного массива в другой массив, вы можете использовать массив.функция concat:

var arr = [
    "apple",
    "banana",
    "cherry"
];

arr = arr.concat([
    "dragonfruit",
    "elderberry",
    "fig"
]);

console.log(arr);

будет печати

["apple", "banana", "cherry", "dragonfruit", "elderberry", "fig"]

Comments

    Ничего не найдено.