javascript - 只有完整字段的 Array2 会覆盖 Array1 中的字段吗?
问题描述
我根本找不到办法做到这一点。我需要仅使用 Array2 中具有值的字段(非空字段''
)覆盖 Array1 并从中生成 Array3。有什么好方法可以做到这一点?
Array1 = ['cookie', 'pancake', '', '', 'brownie']
Array2 = ['', '', 'muffin', '', 'cake']
// gives
Array3 = ['cookie', 'pancake', 'muffin', '', 'cake']
解决方案
您可以使用map()
on Array1
。检查该索引上的元素是否Array1
为空更改返回元素,Array2
否则返回元素本身。
let Array1 = ['cookie', 'pancake', '', '', 'brownie']
let Array2 = ['', '', 'muffin', '', 'cake']
let Array3 = Array1.map((x, i) => x === '' ? Array2[i] : x);
console.log(Array3)
推荐阅读
- flutter - 如何在单击单个按钮时激活 setState 和snackBar?
- ffmpeg - ffmpeg - 在背景图像上覆盖文本
- javascript - 如何在数组中随机生成一个项目而不连续两次获得相同的项目?
- c++ - 我如何开始这个问题以及如何找到 -ve 号码?
- azure - 在没有 Office 365 的情况下使用 AIP/MISP 标签
- javascript - 如何将函数循环到 VueJs 方法中?
- python-3.x - 如何使用熊猫删除国家名称以外的列中的数据
- python - 在 Python 中,如何将包含名称和地址的字符串数据集拆分为单独的列。
- google-cloud-platform - 如何使用python+stackdriver查询gcp google cloud中的空闲实例?
- python - python中变量命名的约定是什么?