Возврат Javascript undefined, даже когда я возвращаю строку [duplicate]

полностью зависит от вашей видеокарты и прошивки. У меня есть карта geforce gtx 750ii с драйвером nvidia из репозиториев ubuntu. отличный 4k опыт для видео и игр.

45
задан 7 January 2016 в 15:11

1 ответ

return выходит из текущей функции, но итерации продолжаются, поэтому вы получаете «следующий» элемент, который пропускает if и выдает предупреждения ...

Если вам нужно остановите цикл, вы должны просто использовать простой цикл for следующим образом:

$('button').click(function () {
   var arr = [1, 2, 3, 4, 5];
   for(var i = 0; i < arr.length; i++) {
     var n = arr[i]; 
     if (n == 3) {
         break;
      }
      alert(n);
   })
})

Вы можете узнать больше о js break & amp; здесь: http://www.w3schools.com/js/js_break.asp

14
ответ дан 15 August 2018 в 16:10
  • 1
    Сожалею. Это слишком долго для использования. – Tân Nguyễn 7 January 2016 в 15:22
  • 2
    Что вы имеете в виду??? Я написал это так, чтобы легко понять ... Код может быть немного сокращен, но он получает именно то, что вы хотели, без лишних итераций массива, как некоторые другие ответы здесь :-) – Ronen Cypis 7 January 2016 в 15:27
  • 3
    Вам нужно объявить массив раньше. Вы хотите использовать цикл в пределах длины массива. Вам нужен индекс для доступа к элементу массива ..... Так много вещей :) Это я имею в виду – Tân Nguyễn 7 January 2016 в 15:31
  • 4
    вы уже объявили массив в вашем примере, я просто добавил ссылку (var arr) к нему для легкого доступа. Вы также можете изменить цикл for на for in или while ... все эти параметры намного лучше, и быстрее, чем создание новой функции, и выставляя ошибку в ваших других примерах здесь. И производительность, и чистый код ... удачи в любом случае :-) – Ronen Cypis 7 January 2016 в 15:35

Другие вопросы по тегам:

Похожие вопросы: