Пробую написать сейчас простой и банальный обработчик строки, чтобы делил мне строку на слова, и кидал мне в массив. Столкнулся с проблемой:
Код
jmc.RegisterHandler("Incoming","OnIncoming()");



function OnIncoming()
{    
    var str = jmc.event;

 

    var pos = 0;
    var i = 0;
    str_lst = new Array("");
    
    if(str.search("статуя") != -1) {    
 
 while (str.charAt(pos) != -1) {
     
 str_lst[i] = str_lst[i] + str.charAt(pos);
 pos = pos + 1;
 }
    }
}



У меня постоянно мой цикл падал в бесконечный, в итоге я для проверки свел все в вышенаписанный код. Теоретически он должен мне поочередно брать символы из строки, которую я получил из муда, и в которой есть слово "статуя", и добавлять их в элемент массива str_lst[0]. Как написано в спецификации языка, если переменная pos будет больше длины строки, то charAt(pos) вернет мне -1. Именно такая у меня проверка и стоит. Подскажите, пожалуста, почему данный цикл падает в бесконечный?