是否有用于数组连接的空条件运算符?
Is there a null-conditional operator for array concatenation?
const addendum = null
const acts.change = [act1];
console.log( acts.change.concat(addendum?.changedActions) );
输出 [act1, null]
而不是预期的 [act1]
。我是在滥用空条件运算符还是 is
console.log( addendum ? acts.change.concat(addendum?.changedActions) : acts.change )
best/briefest 获取所需内容的方法?
谢谢朋友,测试显示
acts.change.concat(addendum?.changedActions??[]))
是我正在寻找的行为。
没有任何内置功能可以让 concat()
忽略该参数。因此,您需要将未定义的参数替换为空数组,以便不连接任何内容。
除了条件链接之外,您还可以使用 null coalescing 运算符:
addendum?.changedActions??[]
为了进一步减少语法,使用 ES6 省略号而不是调用 concat()
。
console.log([...acts.change, ...addendum?.changedActions??[]])
const addendum = null
const acts.change = [act1];
console.log( acts.change.concat(addendum?.changedActions) );
输出 [act1, null]
而不是预期的 [act1]
。我是在滥用空条件运算符还是 is
console.log( addendum ? acts.change.concat(addendum?.changedActions) : acts.change )
best/briefest 获取所需内容的方法?
谢谢朋友,测试显示
acts.change.concat(addendum?.changedActions??[]))
是我正在寻找的行为。
没有任何内置功能可以让 concat()
忽略该参数。因此,您需要将未定义的参数替换为空数组,以便不连接任何内容。
除了条件链接之外,您还可以使用 null coalescing 运算符:
addendum?.changedActions??[]
为了进一步减少语法,使用 ES6 省略号而不是调用 concat()
。
console.log([...acts.change, ...addendum?.changedActions??[]])