javascript - 命名多个迭代计数器的良好做法

标签 javascript loops iteration counter

我的问题是关于在不同函数中命名多个迭代计数器的一般良好做法。假设我有 3 个不同的函数,每个函数都有 for环形。在第一个中,我使用了 for(var i=0; i<5; i++) 所有其他功能也具有相似的for环形。我是否应该更改 i反对0在每个函数末尾的每个循环之后或在每个 for 中声明 3 个不同的变量作为迭代计数器在每个函数中循环?

最佳答案

I have 3 different functions

如果它是三个不同的函数,并且您声明循环 for (vari = 0),每一个都会有不同的 i。在这种情况下,var 在函数作用域 (see MDN) 内声明变量。所以,i 是一个非常好的名称(大多数情况下,我看到 ijk 用于嵌套循环( *)) 并且不需要区分。

但是:如果没有 var,如果您不处于严格模式,i 将具有全局作用域。

作为旁注:截至今天(ES6),我更喜欢使用 for (leti = 0。 ..),如果 i 没有在循环外使用,因为在这种情况下 i 的作用域是循环 ( MDN )。


(*) 即使需要三个嵌套循环,也可能会出现问题。

关于javascript - 命名多个迭代计数器的良好做法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45129022/

相关文章:

java hashmap键迭代

java - 如何遍历字符串数组列表的数组列表?

自定义类的 C++ begin() 和 end() 的 Python 等价物

javascript - 如何查找任何元素的默认工具提示的事件

javascript - 只读取 firebase 中的某些字段

python - 数值积分循环 Python

java - 如何遍历文件夹中的所有文件(如果文件名未知)?

javascript - es6 - 从一些没有别名的 js 文件中导入所有函数以创建 webpack 包

javascript - 将图像数据设置到输入文件标签中

python - for循环迭代之间的延迟(python)