Есть ли какая-либо функциональная или производственная причина для использования одного над другим в данном конкретном случае?
Нет, если мы предположим, что цикл for-of
является последним в функции, содержащей его. Могут быть аргументы стиля, так или иначе, но не по функциональным причинам или по причине производительности.
Очевидно, что если после кода *1000* есть цикл for-of
, то использование break
приведет к запуску этого кода, а использование return
приведет к пропуску этого кода. Это существенная функциональная разница:
function a(array) {
for (const value of array) {
if (value % 2 == 0) {
break;
}
}
console.log("This line gets reached");
}
function b(array) {
for (const value of array) {
if (value % 2 == 0) {
return;
}
}
console.log("This line does NOT get reached");
}
const arr = [1, 2, 3];
a(arr);
b(arr);
В этом примере код в a
и b
одинаков, за исключением того, что a
использует break
, а b
использует return
(и текст, записанный в конце, немного отличается) .
Без этого console.log
после цикла функциональной разницы нет.