Javascript (var i=0,item;item=a[i+;+;])的语法是什么
在中,语法Javascript (var i=0,item;item=a[i+;+;])的语法是什么,javascript,for-loop,control-structure,Javascript,For Loop,Control Structure,在中,语法 for (var i = 0, item; item = a[i++];) 被解释为中间的“项目”是对真/假的条件测试。 但是,我假设语法是(开始;条件测试;控制因子),每个段之间都有分号。这里,语法对我来说是陌生的(开始,条件测试;控制因素;),中间有逗号,末尾有分号。相当于 for (var i = 0; item; item = a[i++]) ? 如果是这样,为什么要在结尾用逗号和分号写呢?格式没有改变。它只是声明var项。因此,它在start部分声明了两个变量。真实性测
for (var i = 0, item; item = a[i++];)
被解释为中间的“项目”是对真/假的条件测试。
但是,我假设语法是(开始;条件测试;控制因子),每个段之间都有分号。这里,语法对我来说是陌生的(开始,条件测试;控制因素;),中间有逗号,末尾有分号。相当于
for (var i = 0; item; item = a[i++])
?
如果是这样,为什么要在结尾用逗号和分号写呢?格式没有改变。它只是声明
var项
。因此,它在start
部分声明了两个变量。真实性测试是item=a[i++]代码>和控制因子
为零
for (;;) statement
是有效的for语句。你不必在任何一个部分中添加任何内容
item=a[i++]
只要item
的计算结果为true
。真实性在作业的左侧完成。这将取决于它的数据类型,但对于int,它可以是除0
之外的任何值,例如。格式没有更改。它只是声明var项
。因此,它在start
部分声明了两个变量。真实性测试是item=a[i++]代码>和控制因子
为零
for (;;) statement
是有效的for语句。你不必在任何一个部分中添加任何内容
item=a[i++]
只要item
的计算结果为true
。真实性在作业的左侧完成。这取决于它的数据类型,但对于int,它可以是除0
以外的任何值,例如。在该表达式中,我们有
- 初始化=
var i=0,item
——声明两个变量,并分配其中一个
- condition=
item=a[i++]
——执行赋值,并测试赋值结果
- 控制因子=
nothing
——增加i
是作为条件的一部分,因此这里不需要任何东西
循环的本质上等同于以下内容:
initialization;
while (condition) {
body;
control factor;
}
因此,当我们从循环中替换时,我们得到:
var i = 0, item;
while (item = a[i++]) {
// body that you didn't show
}
赋值的值是已赋值的值,因此条件是a[i]
是否真实。不需要控制因子,因为a[i++]
返回a[i]
的值,并且同时递增i
编写此循环的更典型方法是:
for (var i = 0; a[i]; i++) {
var item = a[i];
// body that you didn't show
}
作者只是向你展示了如何组合这些元素。在这个表达式中,我们有
- 初始化=
var i=0,item
——声明两个变量,并分配其中一个
- condition=
item=a[i++]
——执行赋值,并测试赋值结果
- 控制因子=
nothing
——增加i
是作为条件的一部分,因此这里不需要任何东西
循环的本质上等同于以下内容:
initialization;
while (condition) {
body;
control factor;
}
因此,当我们从循环中替换时,我们得到:
var i = 0, item;
while (item = a[i++]) {
// body that you didn't show
}
赋值的值是已赋值的值,因此条件是a[i]
是否真实。不需要控制因子,因为a[i++]
返回a[i]
的值,并且同时递增i
编写此循环的更典型方法是:
for (var i = 0; a[i]; i++) {
var item = a[i];
// body that you didn't show
}
作者只是向你展示了如何将这些东西组合起来。我一点也不喜欢这样。这似乎是故意混淆。这是推荐的语法??我一点都不喜欢。这似乎是故意混淆。这是一种推荐的语法??也许可以解释一下为什么item=a[i++]
在正确的时间是正确的?也许可以解释一下item=a[i++]
为什么在正确的时间是正确的?我喜欢你的安排方式。干得好。作为对我自己的提醒,我可能会补充一点,数组在尝试访问超出其长度的元素(或未填充的元素)时返回“undefined”,该元素被转换为boolean FALSE。我喜欢您的布局方式。干得好。作为对我自己的提醒,我可能会补充一点,数组在试图访问超出其长度的元素(或未填充的元素)时返回“undefined”,该元素被转换为boolean FALSE。