【发布时间】:2014-07-31 18:49:20
【问题描述】:
我想知道 for 循环中的第三个参数(语句/表达式?)是否可以是有条件的。例如,如果要使用可选的第三个参数调用函数,则此可选参数的存在与否将决定第三个操作。
function doThing(arg1, arg2, optional) {
var args = arguments;
for (var i = arg1; arg1 < arg2; args[2] ? i = i+optional : i++) {
// Do stuff
}
}
我在网上找不到与此相关的任何内容,所以我猜可能不是;如果不是,创建相同功能的最佳方法是什么?
【问题讨论】:
-
您的
optional变量是否确定增加i的步数? -
@showdev - 在这个例子中是的,抱歉没有说清楚。但我想不一定非得如此。
-
为什么使用命名参数和
args[2]的混合语法?为什么不只使用其中一个? -
@TedHopp 只是因为我读到
arguments并不总是表现得像一个数组,而将它们存储在一个数组中并对其进行操作会产生更可靠的结果。但你可能会把它归结为缺乏经验。
标签: javascript for-loop conditional