2017-05-17 1 views
-1

2つの配列要素を比較するjavascriptキーワードはありますか?たとえば :javascriptの配列要素と一致するキーワードはありますか?

var a = [1,2,3]; 
var b = [4,2,5]; 
var c = a.keyword(b) = [0,1,0] 
+0

'0' 'false'をし、 '1'は' true'をを意味意味?質問に答える:いいえ、それのための方法はありません。 –

+1

この機能が何をすべきかを詳しく教えてください。 2つの配列のインデックスをインデックスで比較し、アイテムが同一であることを返しますか?または出現を数えますか?地図には「a」からの特定の項目が含まれています。 – Thomas

+0

@Thomas私はそれがちょうど 'a [i] === b [i]だと思いますか? 1:0' – nem035

答えて

3

あなたはArray.prototype.mapを使用してインデックスを使用して二番目の配列に値を比較することができます。

var a = [1,2,3]; 
 
var b = [4,2,5]; 
 
var c = a.map(function(elem, index){ 
 
    return elem === b[index]; 
 
}); 
 
console.log(c);

+0

ありがとう、ループよりずっと簡単です。 – user1854438

+0

もちろん!さて、これはちょうどおおまかなスケッチだったので、もしその関数が再利用されるならば、追加のロジックが必要になるでしょう。たとえば、配列の長さが異なる場合は失敗します(コンテキストによっては、同じ長さの配列が保証されます)。 [ここ](https://jsfiddle.net/ghdyhxwr/1/)は、「安全性チェック」を追加する方法を示すjsfiddleです。 – Hodrobond

0

あなたは同じインデックスの要素を比較し、見つかったかどう、1またはゼロを返すことができます。

var a = [1, 2, 3], 
 
    b = [4, 2, 5]; 
 
    result = a.map(function (a, i) { 
 
     return +(a === b[i]); 
 
    }); 
 

 
console.log(result);

ES6

var a = [1, 2, 3], 
 
    b = [4, 2, 5]; 
 
    result = a.map((a, i) => +(a === b[i])); 
 

 
console.log(result);

関連する問題