2017-01-06 4 views
0

質問のタイトルの仕方は完全にはわかりませんが、インデックス0の一致する文字列に基づいて2番目の配列から1つの配列に追加しようとしています。これはGoogle Apps Script Webアプリケーションに含まれているため、PHPではなくJavaScriptベースのアプリケーションです。一致するキーから配列に追加

// Sent from client 
Array1: ["A"] 

// Stored on server 
Array2: [["A", "June","15"], ["B","October","30"]] 

クライアントから送信されたフォームオブジェクトに基づいて一致する配列全体を返したいと思います。

私が試してみた:

Array1 = Array1.filter(function(val) { 
    return Array2.indexOf(val) !== -1; // I thought this would return indices that matched 
}); 
を私は空の配列ではなく ["A","June","15"]で返され得ます。何か案は?

答えて

1

あなたは正しくfilter機能を使用しました。Array1に基づいてfilterArray2にする必要があります。

var Array1= ["A","B"] 
 
var Array2=[["A", "June","15"], ["B","October","30"],["C","September","16"]] 
 
var result = Array2.filter(function(val) { 
 
    return Array1.indexOf(val[0])!=-1; 
 
}); 
 
console.log(result);

+0

これは、1つに適していますが、私はそれが最初の結果の後に終了Array1' '展開したい場合。 'Array1'を拡張したいのであれば、どのように各キーをループさせるのですか? – Brian

+0

@BrianBennett、私は私の答えを編集しました。今見てください。 –

関連する問題