我想知道是否有可能将条件运算符与附加赋值运算符结合起来。所以,如果我有一个循环,比如:
var list = ""
for (var i=0; i < 3; i++) {
list += (i = 2 ? "yea " : "nope")
}
alert( list )我希望得到一个警告,说yea yea nope,然而,它只是循环一次,并给yea。这是可能的吗,还是我只需要使用一个标准的if/else语句?
小提琴手:http://jsfiddle.net/uU9g2/
发布于 2014-04-03 03:43:11
i = 2是一项任务,而不是一项测试。它将i设置为2,这是真,因此它输出"yea“。然后循环增量i++将i从其新值2增加到3,之后不再是< 3,因此循环终止。
你想要的是i == 2。
发布于 2014-04-03 03:43:57
var list = ""
for (var i=0; i < 3; i++) {
list += (i == 2 ? "yea " : "nope")
}
alert( list )您需要的是==而不是=
https://stackoverflow.com/questions/22827399
复制相似问题