Я пишу программу. И мне требуется сравнить внутренности двух массивов. Внутри массивов лежат строки. Такие как, например, 'help'. Данные массивы у меня заполняются от http запроса строками. Данные строки у меня занесены в SetInterval. А вначале интервала данные массива сохраняются перед новым перебором. Мне требуется, чтобы после нового перебора программа сравнивала внутренности двух массивов и выводила мне тот элемент, которые присутствует в одном массиве, но отсутствует в другом. Вот некое подобие того, что я хочу воссоздать.:
var s1=[];
var s2=[]; // saved information from request
setInterval(function({
s2 = s1;
for ( счетчик, условие перебора, счетчик++ ) {
s1.push(элемент от запроса);
}
if ( счетчик == 0 ) {
} else {
Вот здесь мне нужно сравнить элементы массива.
}
}, 1000)
Пример того, что я подразумеваю под "сравнить":
var s1 = [lol, k, iase, kda];
var s2 = [k, lol, kda];
var s3 = Элементу который есть в 1-ом массиве, но отсутствует во втором.
function diff(a, b) {
return a.filter(function(i) {return b.indexOf(i) < 0;});
};
var arr1 = ['lol', 'k', 'iase', 'kda'],
arr2 = ['k', 'lol', 'kda'];
console.log(diff(arr1, arr2));
Данная функция принимает 2 массива, сортирует их методом sort() и одним цыклом проходит сквозь них возвращая первое неравенство.
const compareArrays = (arr1, arr2) => {
let len = Math.max(arr1.length, arr2.length);
let sorted1 = arr1.sort();
let sorted2 = arr2.sort();
for (let i = 0; i < len; i++) {
if (sorted1[i] !== sorted2[i])
return sorted1[i] || sorted2[i];
}
return true;
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
подскажите пожалуйста каким образом можно сделать показ половину слайда? Использую slick, но можно дать советы и по другим слайдерамСпасибо
Исходный код имеет следующий вид: