这些天您将如何合并Javascript中的两个可选数组?这是我到目前为止获得的最好成绩:

const trades = this.position.trades; // trades or maintenance can be undefined
const maintenance = this.position.maintenance;
const principals = [... trades ? trades : [], ... maintenance ? maintenance : []];


在处理任何一个数组都可能是未定义(也称为可选)的事实的同时,寻找优雅的解决方案。谢谢!

PS:我正在使用Typescript 2.6 / ES6

最佳答案

你可以做这样的事情。 ||如果第一个操作数为假,则将返回[]

const trades = this.position.trades || [];
const maintenance = this.position.maintenance || [];
const principals = [...trades, ...maintenance];


或者使用Array#concat代替spread运算符

const trades = this.position.trades || [];
const maintenance = this.position.maintenance || [];
const principals = trades.concat(maintenance);

关于javascript - 如何在JavaScript中合并两个可选数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47659562/

10-09 20:34