как добавлять элементы в json при работе с массивами и объектами

Аватар пользователя Ivan Gagarinov
Ivan Gagarinov
22 декабря 2024

Если вам нужно добавить элемент в массив в объекте JSON, можно использовать метод push() в JavaScript.

Пример:

const jsonData = {
  "name": "Ivan",
  "hobbies": ["reading", "gaming"]
};

// Добавим элемент "cooking" в массив "hobbies"
jsonData.hobbies.push("cooking");

// Подсмотрим результат
console.log(JSON.stringify(jsonData, null, 2));

Вывод будет таким:

{
  "name": "Ivan",
  "hobbies": [
    "reading",
    "gaming",
    "cooking"
  ]
}

Чтобы добавить новое свойство в объект JSON, просто назначьте новое значение для нового ключа:

Пример:

const jsonData = {
  "name": "Ivan",
  "age": 30
};

// Добавим новое свойство "gender"
jsonData.gender = "male";

// Подсмотрим результат
console.log(JSON.stringify(jsonData, null, 2));

Вывод будет таким:

{
  "name": "Ivan",
  "age": 30,
  "gender": "male"
}

Если необходимо добавить элемент в вложенный объект или массив, необходимо последовательно обращаться к нужному объекту.

Пример:

const jsonData = {
  "name": "Ivan",
  "address": {
    "city": "Moscow",
    "zip": "101000"
  }
};

// Изменим значение "city" на "Saint Petersburg"
jsonData.address.city = "Saint Petersburg";

// Подсмотрим результат
console.log(JSON.stringify(jsonData, null, 2));

Вывод будет таким:

{
  "name": "Ivan",
  "address": {
    "city": "Saint Petersburg",
    "zip": "101000"
  }
}

Если необходимо добавить новый объект в массив:

Пример:

const jsonData = {
  "name": "Ivan",
  "hobbies": ["reading", "gaming"]
};

// Добавим объект с навыками в массив у jsonData
jsonData.skills = [];
jsonData.skills.push({
  "skill": "programming",
  "level": "advanced"
});

// Подсмотрим результат
console.log(JSON.stringify(jsonData, null, 2));

Вывод будет таким:

{
  "name": "Ivan",
  "hobbies": [
    "reading",
    "gaming"
  ],
  "skills": [
    {
      "skill": "programming",
      "level": "advanced"
    }
  ]
}
0 0
Познакомьтесь с основами JavaScript бесплатно