Почему этот код не правильно толкает слова в массив ответов? Когда я изменяю цикл до:Почему массивы нельзя сравнивать с === в Javascript?
for (var k in testDict) {
console.log(testDict[k].split("").sort());
}
это правильно печатает то, что я ожидал, массив раскола, отсортированные символы из слов. Поэтому я не уверен, почему он не оценивает равных и не пытается ответить. Благодаря!
function word_unscrambler(word, dict) {
var testDict = dict;
var answer = [];
var word_scrambled = word.split("").sort();
for (var k in testDict) {
if (word_scrambled === testDict[k].split("").sort())
answer.push(testDict[k]);
}
console.log(answer);
}
word_unscrambler("kevin", ["trees", "but", "ankle", "nevik", "knive", "evin"]);
+1. Возможно также memoize 'word_scrambled.join ('')' –
Удивительный, высоко оцененный –
@Jacob Krall Это правда, edit'd – raser