Почему это считается лучшей практикой? - PullRequest
1 голос
/ 20 марта 2020

Я видел этот код на сайте w3schools.com (JavaScript Best Practices)

// Declare at the beginning
var i;

// Use later
for (i = 0; i < 5; i++) {

Я не понимаю, почему объявление этой переменной считается хорошей практикой. Это нужно только для цикла. Почему я должен сделать это глобальным

Ответы [ 2 ]

2 голосов
/ 20 марта 2020

На самом деле, этот код устарел. Рекомендуется использовать let вместо var (, см. Этот вопрос в StackOverflow и объявить его внутри оператора for:

for (let i = 0; i < 5; i++) {
    console.log(i); // 0, 1, 2, 3, 4
}
console.log(i); // undefined variable i

let определяет переменная области видимости блока. Эта переменная не будет "пузыриться" до глобальной области видимости, будучи более эффективной, не загрязняя глобальную область видимости.

0 голосов
/ 20 марта 2020

Согласно w3schools.com :

Хорошей практикой написания кода является размещение всех объявлений в начале каждого скрипта или функции.

Это will:

Предоставлять более чистый код. Предоставлять единственное место для поиска локальных переменных. Упростить предотвращение нежелательных (подразумеваемых) глобальных переменных. Уменьшить возможность нежелательных повторных объявлений.

. Вы можете сделать это, чтобы сделать код более чистым. Но я рекомендую использовать let вместо var.

...