2017-02-16 12 views
0

В javascript есть такой объект, как {}, где вы можете иметь ключи, которые всего 1 значение. Но в целом, если я хочу хэш-карту, где ключ является многозначным, как это может быть 3 или 6 или 7 целых чисел, которые сопоставляются со значением и т. Д. ... Если есть лучший способ обработать его изначально или есть библиотека для него ?Есть ли библиотека javascript или собственный способ обработки hashmaps с несколькими ключами?

Благодаря

+0

Ну, есть довольно новый класс Map, но основная проблема для вашего приложения является то, что нет ничего в JavaScript, как '.hashValue()' и '.equals()' конвенции в Java (например). Таким образом, все, с чем вам нужно работать, - это сопоставление на основе равенства для определения равенства ключевых слов. – Pointy

+0

Это нормально, естественное равенство отлично подходит для сравнения ключей, так как ключи все целые числа. – omega

+2

Это классика [проблема XY] (http://meta.stackexchange.com/q/66377/289905). Что вы _actually_ пытаетесь сделать? Зачем вам нужна такая хэш-карта? – Xufox

ответ

0

Вы могли бы использовать массив с числами и присоединиться к ней по умолчанию с запятой. Затем возьмите строку как ключ для объекта.

var hash = Object.create(null); 
 

 
hash[[1, 2, 4, 5].join()] = 'foo'; 
 
console.log(hash[[1, 2, 4, 5].join()]); 
 
hash[[1, 2, 4, 5].join()] = 'baz'; 
 
console.log(hash[[1, 2, 4, 5].join()]); 
 
hash[[1, 2, 4, 5, 7].join()] = 'bar'; 
 
console.log(hash);
.as-console-wrapper { max-height: 100% !important; top: 0; }

 Смежные вопросы

  • Нет связанных вопросов^_^