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

Я ссылаюсь на сообщение ниже, но не понял его должным образом Посмотреть здесь

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

Кто-нибудь знает, как создать этот объект и динамически добавить пары ключ-значение и выполнить над ним грубую операцию?

Я пробовал:

var dict = [{key:"key", value:"value"}];
dict[0].key = "keys";
dict[0].value = "vals";
console.info(dict);
// return null value of dict object.

Так что это не работает. Спасибо

Вы можете просто попробовать: - dict["key"] = value, вы можете получить все ключи и значения, используя Object.keys(dict) и Object.values(dict).

Gourishankar 09.04.2019 07:42

это работает. jsfiddle.net/srycmwjo

Shashin Bhayani 09.04.2019 07:43

Вы можете использовать Map, developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…

sschmeck 09.04.2019 07:58

Чтобы получить все ключи вашей структуры данных, попробуйте dirct.map(({key}) => key) в JS6.

sschmeck 09.04.2019 08:00

да, теперь я могу добавлять новые ключи со значением, но как я могу удалить их динамически?

Hardik Virani 09.04.2019 08:06

Вы можете перебирать массив ключей, используя Object.keys(dict), который вернет массив ключей и удалит пару значений ключа, которую вы хотите использовать, используя карту в качестве итератора.

akhil choudhary 09.04.2019 08:11
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
6
1 202
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Вы можете использовать карта.
Объект карты имеет функции для динамической установки ключей и значений с помощью .set(key, value)

var dict = new Map();
dict.set("key1", "value1");
dict.set("key2", "value2");
dict.set("key3", "value3");

for (var [key, value] of dict) {
  console.info(key + ' = ' + value);
}

Ответ принят как подходящий

Я пробовал динамически использовать .set(key, value) и это работает

var dict = new Map();
dict.set("key1", "value1");

for (var [key, value] of dict) {
  console.info(key + ' = ' + value);
}

Другие вопросы по теме