JSHint:For循环中的“意外'var'”

问题描述 投票:-2回答:1

我正在我的Javascript代码上运行JSHint尝试对其进行清理,并且正在向我发出此警告:

 #3 Unexpected 'var'.
    for (var i = 0; i < self.myArray.length; i++) { // Line 88, Pos 14

将其扩展为这段代码:

self.myFunction = function() {
    for (var i = 0; i < self.myArray.length; i++) {
        // Do some stuff
    }
};

我已经搜索了互联网,并发现了许多编写for循环的方法。有些使用var,有些不使用,其他使用let等。

我似乎找不到有关JSHint希望我如何构造for循环的任何信息。谁能启发我一些最佳实践,或者JSHint在寻找什么?

谢谢! :)

javascript jshint
1个回答
0
投票

如果使用var,它将创建变量作为封闭函数作用域或全局作用域(如果不在函数内部)。

因此请始终在for循环中使用let,范围将仅在for循环内。

self.myFunction = function() {
    for (let i = 0; i < self.myArray.length; i++) {
        // Do some stuff
    }
};
© www.soinside.com 2019 - 2024. All rights reserved.