Der*_*son 5 javascript ecmascript-5
我正在深入研究for循环,并ExpressionNoIn在规范中遇到http://www.ecma-international.org/ecma-262/5.1/#sec-12.6.3
这是什么意思?
第11.14节 "逗号运算符(,)" 对此进行了解释:

的*NoIn具有相同的结构,除了在不包括使用的in关键字,11.8节"关系运算符":

规范说:
需要"NoIn"变体以避免
in操作in符在for语句中与操作符混淆操作符.
由于in可以以两种方式使用:
for (var x in foo) { ... }
Run Code Online (Sandbox Code Playgroud)
要么:
if ('x' in foo) { ... }
Run Code Online (Sandbox Code Playgroud)
"NoIn"变体使得无法in在for循环的第一个表达式中使用上面的第二个版本.因此,以下代码无效:
for (y = 'x' in foo; y; y = false) { ... }
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
149 次 |
| 最近记录: |