javascript - Javascript数组 - 用另一个数组填充缺失的元素
问题描述
假设我有两个长度相同的数组:
var a=[5,2,8,12,15,72,3,9];
var b=[,3,,5,19,,71,];
在 Javascript 中,如何合并这两个数组,以便在每个索引中新数组都包含相应的b
元素,如果 is 不为空,则为a
.
新数组c
应该是:
c = [5,3,8,5,19,72,71,9]
注意:不得更改元素的顺序。
解决方案
所以假设它A
总是有一个元素,而它并不总是真的B
会有一个。那么下面的代码应该是单词。
基本上只是循环B
检查是否有输入,如果没有获取值,则将其推送到新数组A
这在线性时间内运行。
var a=[5,2,8,12,15,72,3,9];
var b=[,3,,5,19,,71,];
function createNewArray(a, b){
let newArray = [];
for(let i=0;i<=b.length;i++){
if(b[i]){
newArray.push(b[i])
} else {
newArray.push(a[i])
}
}
return newArray
}
console.log(createNewArray(a,b))
推荐阅读
- android-management-api - 如何通过android管理api阻止chrome中的url
- docker - 使用共享库文件构建 Docker 映像
- java - 将两个垂直的 JSplitPane 放在一个框架 java 上
- java - 我可以使用 Android 智能手机读取 FDX-B RFID 吗?
- mysql - MySQL 与 docker 访问被拒绝
- cryptography - 使用私钥和登录域签署证书
- python - tensorflow GPU未显示在jupyter笔记本中
- c# - 胡言乱语
- design-patterns - 哪种设计模式最适合构建递归树?
- node.js - nodejs 应用程序可以有两个 package.json 文件并且可以单独运行吗?