Почему JavaScript ведет себя так? [Дубликат]

tkss44 спросил: 27 ноября 2017 в 06:07 в: javascript

На этот вопрос уже есть ответ:

  • javascript var declaration within loop 4 ответы
  • Javascript function scoping and hoisting 14 ответов
  • Scoping rules for variables initialized in a for loop [duplicate] 1 ответ

Является ли var highScore = 0 отдельным циклом? Разве scores[i] не всегда greater than 0? Мне нужно, чтобы кто-нибудь рассказал, как работает оператор if, и мне нужно понять, как highScore = scores[i] возвращает мне наибольшее число. Это упражнение было в книге, которую я читаю, чтобы выучить JavaScript, и я просто чувствую, что это у меня над головой. Кто-нибудь может пролить свет? Спасибо.

Как оператор if работает в этом коде? Какое значение имеет highScore как переменная, которая будет использоваться в операторе if, если ее значение равно 0? Это не кажется логичным для него, чтобы внезапно вывести значение - самое большое число в массиве.

var scores = [60, 50, 60, 58, 54, 54, 58, 50, 52, 54, 48, 69, 34, 55, 51, 52, 44, 51, 69, 64, 66, 55, 52, 61, 46, 31, 57, 52, 44, 18, 41, 53, 55, 61, 51, 44];var highScore = 0;for (i = 0; i < scores.length; i++) {    output = "Bubble #: " + i + " scores: " + scores[i];    console.log(output);    if (scores[i] > highScore){
        var highScore = scores[i];
    }
}

0 ответов