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 )); |
Не внимателен в последнее время :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)); |
рони,
Мну тупо про простой массив, без переменных [1,2,3,"b","c"] ====== Почитал первопост, и чуть дальше понял, чо хотят премудростей... ну нафиг... |
arrayEqual = (arr1,arr2)-> i = arr1.length myBool while(i--) if arr1[i] == arr2[i] myBool = true else i = 0 myBool = false return myBool |
[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 |
Jekshmek,
:-? а тему прочитать? можно отсюда https://javascript.ru/forum/misc/247...tml#post150022 и далее alert([1,"2,3"].toString() === [1,2,3].toString()); |
Для строк нормальный вариант во всей теме только этот.
А не для строк, увы, не всё так просто: 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')) |
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])); |
j0hnik,
где сравнение length и может every вместо some |
|
Часовой пояс GMT +3, время: 20:53. |