rob*_*ert 3 javascript for-loop if-statement ecmascript-6
考虑下一个例子。是否有不需要这个 if 语句的较短版本?
let d = null
if (d) {
for ( const z of d ) {
//
}
}
Run Code Online (Sandbox Code Playgroud)
例如,可能是这样的:
let d = null
for ( d && const z of d ) {
//
}
Run Code Online (Sandbox Code Playgroud)
我更喜欢带有显式if检查的第一个版本,但是如果您想稍微降低一下,则可以使用d || [],以便如果d为 false,则不执行迭代并且不抛出错误,尽管这会创建一个不必要的中间数组:
const d = null
for (const z of d || []) {
console.log(z);
}
const e = ['foo'];
for (const z of e || []) {
console.log(z);
}Run Code Online (Sandbox Code Playgroud)