javascript - 在数组的不存在索引上使用 concat

标签 javascript

因此,如果索引不存在于数组中,下面的代码将抛出 undefined

注意:是数组的数组

arr[index] = arr[index].concat(data);

最后我用检查修复了它

if (!array[index]) {
   array[index]=[];
}

这解决了问题。

问题:是否有任何 JavaScript 技巧可以更轻松地解决这个问题(更少的代码行,无需检查等等)?

最佳答案

您可以使用 || 运算符:

arr[index] = (arr[index] || []).concat(data);

它将检查 arr[index] 是否为真值(不是 nullundefinedNaN""0)。

如果是,它将使用它,如果不是,它将使用 [] 连接到 data

关于javascript - 在数组的不存在索引上使用 concat,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32722736/

相关文章:

javascript - jQuery Highcharts 不适用于 JSF 2.0

javascript - 使用 Cocos2d-JS 在 Django 应用程序中加载 .js 文件时出错

javascript - 如何在 Firestore NextJS 上执行内连接查询

javascript - 如何使用控制台包含外部脚本?

javascript - Jquery 验证淡入和隐藏

javascript - 尝试用圆圈创建图案?

javascript - 如何用 <g> 标签包裹一组 svg 元素?

javascript - 将 Javascript `Set` 转换为数组

javascript - 将异步/等待 block 中的部分代码提取到单独的函数中

javascript - 如何使 JavaScript 钢琴上的第一个按钮正常工作?