, если у меня есть массив myArray
который я Перебор:Javascript индекс массива тест
for(var i=0;i<myArray.length;i++) {
if(myArray[i] == myArray[i+1])
//do something
}
Очевидно, что myArray[i+1]
потерпит неудачу на последней итерации. Заканчивая тестирование, если i == (myArray.length - 1)
, есть ли чистый способ не поддаваться на этот оператор if и просто ли он оценивать значение false (если myArray[i+1]
находится за пределами границ)?
О, и я знаю, что я, вероятно, лучше держать переменную, указывающую на предыдущее значение, и в каждой итерации просто проверяет, если текущее значение равно что сохраненное предыдущее значение. Но я все равно хотел бы знать, как это сделать, как показано в вопросе. – bba
* «Понятно, что myArray [i + 1] потерпит неудачу на последней итерации». * Ну, да и нет, зависит от того, что вы подразумеваете под «fail». Это не исключение, но это почти наверняка не то, что вы хотите. Он будет сравнивать 'myArray [i]' с 'undefined'. Несмотря на это, лучше всего остановиться раньше, как показано в ответе KennyTM. –