javascript - 如何用 "-"替换数组中所有未定义的值?

标签 javascript arrays replace undefined array-map

我有一个像这样的数组:

var array = [1, 2, undefined, undefined, 7, undefined]

并且需要用“-”替换所有undefined值。结果应该是:

var resultArray = [1, 2, "-", "-", 7, "-"]

我认为有一个简单的解决方案,但我找不到。

最佳答案

您可以检查 undefined 并取 '-',否则取值并使用 Array#map用于获取新阵列。

var array = [1, 2, undefined, undefined, 7, undefined],
    result = array.map(v => v === undefined ? '-' : v);
    
console.log(result);

对于稀疏数组,您需要遍历所有索引并检查值。

var array = [1, 2, , , 7, ,],
    result = Array.from(array, v => v === undefined ? '-' : v);
    
console.log(result);

关于javascript - 如何用 "-"替换数组中所有未定义的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49853647/

相关文章:

javascript - 在悬停时的下拉菜单上删除和添加类

Javascript:将多维数组展平为唯一路径数组

java - 将 byte[] 转换为 UnsignedByte[]

jQuery - 将换行符 <br/> 替换为新行\n

javascript - 如何在 Ember.js 中推送/弹出数组?

JavaScript:我自己的解析器的动态正则表达式

javascript - JavaScript 会混淆局部变量吗?

Python - 连接或堆叠两个以上不同形状的数组

string - 导出字符串替换

python - 匹配后re.sub。重复匹配组的所有实例,python