Допустим есть N массивов чисел, какие то могут быть совсем пустые, какие то длинной порядка 10-20 элементов. Как найти общие элементы для всех этих массивов?
Пример данных:
a = [ { id: 1, assetStr: 'hello'}, { id:2, assetStr: 'cat'}, ];
b = [ { id: 3, assetStr: 'dog'}, { id: 4, assetStr: 'hello'}, ];
c = [ { id: 5, assetStr: 'sun'}, { id: 6, assetStr: 'hello'}, ];
Результат на выходе:
res = [ { id: 1, assetStr: 'hello'}, ] ;
a = [ { id: 1, assetStr: 'hello'}, { id:2, assetStr: 'cat'}, ];
b = [ { id: 3, assetStr: 'dog'}, { id: 4, assetStr: 'hello'}, ];
c = [ { id: 5, assetStr: 'sun'}, { id: 6, assetStr: 'hello'}, ];
a.forEach(function (a) {
b.forEach(function (b) {
c.forEach(function (c) {
if(a.assetStr == b.assetStr && a.assetStr == c.assetStr){
console.log(a);
}
})
})
})
Ещё Вариант (в параметр z
объединяется сколько угодно массивов):
a = [ { id: 1, assetStr: 'hello'}, { id:2, assetStr: 'cat'}, ];
b = [ { id: 3, assetStr: 'dog'}, { id: 4, assetStr: 'hello'}, ];
c = [ { id: 5, assetStr: 'sun'}, { id: 6, assetStr: 'hello'}, ];
array = [];
var z = array.concat(a,b,c); //Тут объединяем все массивы
var arr = [];
var res = [];
z.forEach(function (a1) {
if (arr.indexOf(a1.assetStr) != -1) {
res['id:'+z[arr.indexOf(a1.assetStr)].id] = a1.assetStr;
} else {
arr.push(a1.assetStr);
}
});
console.log(res);
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
У меня есть много изображений, у которых, по дизайну, должно быть автоматическое размытие по краям
Как в consolelog правильно вывести ключ FENOM и его значение FN338N ?