2014-11-14 2 views
1

Итак, я возился с простой функцией anagram javascript для сравнения двух строк, однако всякий раз, когда я пытался использовать операцию .split в моей функции сортировки, мой код мог бы ошибиться:TypeError: undefined не является объектом string.split .split

var wd; 
function sortword(word){ 
    wd = word; 
    var w = wd.split(""); 
    w.sort(); 
    return w; 
} 

вызвал "TypeError: undefined is not an object (evaluating 'wd.split')"

http://jsbin.com/lebiwolive/1/edit?js,console

Почему эта причина такой ошибки? Я пробовал определить wd в разных местах, но это так, похоже, имеет значение. Код работает даже корректно, но у меня есть эта ошибка в моей консоли.

ответ

2

Проверьте ваш цикл:

for (i=0; first_words.length; i++) 

Вы не ставили каких-либо конечное состояние, так что цикл продолжает работать после того, как вы прочитали весь массив.

Написать вместо этого:

for (i=0; i<first_words.length; i++) 
+0

Doh! Спасибо, имеет смысл! :( – Darren

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