动态生成数组,填充值之前和之后均为零
我们获取一个月份数组,其中元素小于 12,每个元素在 1 到 12 之间(包括 1 和 12)。我们的任务是使用这个数组并创建一个包含 12 个元素的完整月份数组,如果元素存在于原始数组中,我们使用该元素,否则我们在该位置使用 0。
例如−
Intput → [5, 7, 9] Output → [0, 0, 0, 0, 5, 0, 7, 0, 9, 10, 0, 0]
现在,编写代码 −
示例
const months = [6, 7, 10, 12];
const completeMonths = (arr) => {
const completed = [];
for(let i = 1; i <= 12; i++){
if(arr.includes(i)){
completed.push(i);
}else{
completed.push(0);
}
};
return completed;
};
console.log(completeMonths(months));我们从 1 迭代到 12,并一直检查原始数组是否包含当前元素,如果是,则将该元素推送到新数组,否则将 0 推送到新数组。
输出
以上代码在控制台中的输出为 −
[ 0, 0, 0, 0, 0, 6, 7, 0, 0, 10, 0, 12 ]
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP