Для javascript вы должны привыкнуть ставить фигурные скобки в конец строки, как предлагает Visual Studio. Причина этого в том, что переводчик может иногда добавлять в; при интерпретации файла, который может привести к странному поведению. Например:
return
{
'foo': 3
};
это возвращает неопределенный, а не хеш-литерал, как вы ожидаете, потому что интерпретатор превращает его в:
return;
{
'foo': 3
};
Вы можете подумать, что я это выдумал. Уверяю вас, я не.
Я предлагаю вам обучить свою команду и привыкнуть к форматированию своего javascript, как предлагает VS. Это спасет вас от себя.
<Ч />
Кроме того, еще одна вещь. Вместо того, чтобы делать:
myArray[idx] != -1
Я предлагаю вам сделать:
myArray[idx] !== -1
Это остановит его от приведения типов. Infact ... никогда не используйте == или! = Всегда используйте === и! ==.