var kk = [50,2,33,47,89,98]
var dd = [{y:2,w:3},{y:47,w:87},{y:98,w:87}]
for (var qq in kk) {
for (var tt in dd) {
}
有两个数组我想把第二个数组组装成
[
{y:2,w:3},{y:47,w:87},{y:98,w:87},
{y:50,w:""},{y:33,w:""},{y:89,w:""}
]
这种的 试了好多次都不行。。求救
var kk = [50,2,33,47,89,98]
var dd = [{y:2,w:3},{y:47,w:87},{y:98,w:87}]
for (var qq in kk) {
for (var tt in dd) {
}
有两个数组我想把第二个数组组装成
[
{y:2,w:3},{y:47,w:87},{y:98,w:87},
{y:50,w:""},{y:33,w:""},{y:89,w:""}
]
这种的 试了好多次都不行。。求救
首先找到dd中已有的y,然后循环kk判断元素是否存在dd中,不存在就push进去,并且把新的y保存起来,避免重复。
var kk = [50,2,33,47,89,98]
var dd = [{y:2,w:3},{y:47,w:87},{y:98,w:87}]
var temp = {};
dd.map(function(item) {
temp[item.y] = 1;
});
kk.map(function(item){
if (!temp[item]) {
dd.push({y: item, w: ''});
temp[item] = 1;
}
});
var kk = [50,2,33,47,89,98]
var dd = [{y:2,w:3},{y:47,w:87},{y:98,w:87}]
let newArr = JSON.parse(JSON.stringify(dd));
const newKk = kk.map(item => {
return {
y: item,
w: ''
};
});
newKk.forEach(item => {
if (!dd.some((every) => item.y === every.y)) newArr.push(item)
});
jsfiddle的demo链接:https://jsfiddle.net/liangxh/...
var s = new Set(dd.map(({y})=>y))
dd.concat(kk.filter(k => !s.has(k)).map(y => ({y, w: ''})))
let h = dd
kk.map(item => {
if (dd.map(item1 => item1.y).indexOf(item) === -1)
h.push({y: item, w: ""})
})
这很简单鸭 遍历kk 把dd中没有的kk元素 放到dd里就行啦
10 回答11.2k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.7k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
3 回答1.9k 阅读✓ 已解决
你这规律很奇怪啊。
