2016-04-07 14 views
0

bir işlevde iki dizi karşılaştırılması iki diziler diyelim:Ben JavaScript

arr1 = ["Parsley", "Shrimps", "Olives", "Mushrooms"]; 

diğeri aynı dizeleri ancak farklı bir sırada

arr2 = ["Shrimps", "Parsley", "Mushrooms", "Olives"]; 

Bunları nasıl benzerlikler nelerdir, Cevabın doğru olması için mi?

==, === çalışmıyor gibi görünüyor ... her iki arrs uzunluğunun aynı olup olmadığını kontrol etmek benim durumumda işe yaramaz.

+1

deneyin ya tüm değerleri yineleme ve [bu hedef dizide olup] ise (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference kontrol/Global_Objects/Array/indexOf) ya da her iki diziyi ilk ve döngü içinde basit bir döngü ile sıralayın ve 'a [i] === b [i]' yi karşılaştırın. – h2ooooooo

+0

Döngülerle denemedim, bunu deneyeceğim, umarız çalışalım –

+0

Bunu ES6'nın her ile yapabilirsin, 'var isBothSame = arr1.every (elm => arr2.indexOf (elm)> - 1); ' –

cevap

-1

bu

var arr1 = ["Parsley", "Shrimps", "Olives", "Mushrooms"]; 
var arr2 = ["Shrimps", "Parsley", "Mushrooms", "Olives"]; 

var result = arr1.sort().join() === arr2.sort().join(); 
+0

@NinaScholz Lütfen "Çalışmıyorken" işaretlemeden önce kodu çalıştırın – BesLoi

+0

Hayır, yalan söylüyor. ;) @ user2129748 bir kez daha soruyu oku. OP, 2 dizinin sırasının farklı olacağını söylüyor. Kodunuz yalnızca her iki dizinin düzeni aynı olduğunda çalışır. –

+0

@RajaprabhuAravindasamy, bu hiç komik değil. –

İlgili konular