Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Сравнить два массива (https://javascript.ru/forum/misc/24735-sravnit-dva-massiva.html)

nerv_ 26.09.2015 22:54

Poznakomlus,
var a = [1,2,3];
var b = [1,2,3,4,5,6];

function array_equal ( a, b ) {
    return a.every(function(el, i){
        return el == b[i];
    }, b);
}

alert(array_equal ( a, b ));

Vlasenko Fedor 26.09.2015 23:03

Не внимателен в последнее время :thanks:
var a = [1, 2, 3];
var b = [1, 2, 3, 4, 5, 6];
var c = [1, 2, 3, 4, 5, 6];

function array_equal(a, b) {
    return a.length == b.length
        ? a.every(function (el, i) {
            return el === b[i];
        }, b)
        : false;
}

alert(array_equal(a, b));
alert(array_equal(c, b));

Deff 27.09.2015 01:12

рони,
Мну тупо про простой массив, без переменных
[1,2,3,"b","c"]
======
Почитал первопост, и чуть дальше понял, чо хотят премудростей... ну нафиг...

SergeyGG 21.10.2015 17:14

arrayEqual = (arr1,arr2)->
    i = arr1.length
    myBool
    while(i--)
        if arr1[i] == arr2[i]
            myBool = true
        else
            i = 0
            myBool = false
    return myBool

Jekshmek 04.01.2018 15:35

[1,2,3].toString() === '1,2,3'
 
let arr1=[1,2,3,4,5];
let arr2=[2,1,4,5,3];
console.log(arr1.sort().toString()==arr2.sort().to String());// true

рони 04.01.2018 16:10

Jekshmek,
:-? а тему прочитать? можно отсюда https://javascript.ru/forum/misc/247...tml#post150022 и далее
alert([1,"2,3"].toString() === [1,2,3].toString());

Aetae 04.01.2018 16:33

Для строк нормальный вариант во всей теме только этот.
А не для строк, увы, не всё так просто:
a={a:1};
b={b:2};

arr1 = [2, 3, a, b, 1];
arr2 = [2, 3, b, a, 1];
alert(JSON.stringify(
  [arr1.sort(), arr2.sort()]
,0,'\t'))

j0hnik 07.02.2018 00:37

func=(a,b)=>{
		b=b.sort();
		return !a.sort().some((el,i)=>el !== b[i]);
	};
alert(func([12, 5, 8, 44, 130,],[12, 5, 8, 130, 44]));

рони 07.02.2018 09:54

j0hnik,
где сравнение length и может every вместо some

j0hnik 07.02.2018 10:04

https://javascript.ru/forum/misc/247...tml#post389872 есть такой

А я так для разнообразия запостил.


Часовой пояс GMT +3, время: 20:53.