Мне нужны ключи из хеш-карты javascript / typcript в массиве.Я использую метод Map.Keys () и перебираю ключи для заполнения массива с именем: searchTerms.По какой-то причине последнее значение в массиве всегда является пустой строкой.
Когда я просматриваю hashMap в отладчике, я вижу именно то, что ожидаю;ключи типа string и значения массива строк без пустых ключей.
public setSearchTerms(searchMap: Map<string, Array<string>>) {
if(searchMap && searchMap.size) {
let myKeys = myMap.keys();
this.searchTerms = [...myKeys];
/*
for(let k of myKeys) {
if(k.length > 0) {
this.searchTerms.push(k);
}
}
*/
}
}
Когда я запускаю код как есть, массив searchTerms имеет все ключи с карты плюс пустую строку.Использование цикла for (текущий комментарий) также добавляет пустую строку, но я включил проверку длины, которая решает проблему.Я просто хочу понять, откуда взялась пустая строка.Я могу заставить его работать, но меня беспокоит, что я не могу понять, откуда взялась пустая строка.