2016-06-22 15 views
-3

それぞれの配列を使わずに新しい配列を作成するにはどうすればよいですか? [ "ダイレクト"、 "オーガニック検索"、 "紹介"]配列の既存の配列から新しい配列を作成する

Arrays of an Arrays console pic

JavaScriptを使用して、任意の提案:

ラベルを次のように新しい配列がすべきですか?

+0

使用' 'then ...イメージの代わりにコードを共有してください... – Rayon

+0

' array.map'を使用しますか? –

+0

'Input.map(function(item){return item [0];})' – Rayon

答えて

0

それはせずにこれを実行することはできません任意の種類あなたが提案しているように、foreachのような手作業の反復は、実際にあなたが探しているものではありません。

Array.prototype.map()は、この場合に必要な機能です。 myArray.mapはの値を変更しないことを

var myArray = [["a", 1, 2], ["b", 3, 4], ["c", 5, 6]]; 
 
var result = myArray.map(function(current){ // For each item in `myArray` 
 
    return current[0];      // return it's first element. 
 
});           // And use that in `result`. 
 

 
console.log(result)

注:(「ボンネットの下に」、それはまだループです)

は、ここでは、あなたの希望する結果を得るためにmapを使用する方法ですmyArray。どこかで.mapの戻り値を格納する必要があります。

あなたはES6を使用して、これは少し短くすることができ、およそsupporting anything but the latest browsersを心配する必要はありませんの場合:

var myArray = [["a", 1, 2], ["b", 3, 4], ["c", 5, 6]]; 
 
var result = myArray.map((c) => c[0]); 
 

 
console.log(result)

ため-loop`/`アレイ#マップ
2

Array.forEach()は嫌いですか?そのような場合のためにES6矢印関数式でArray.map機能を使用してみてください:

// supposing arr is your initial array 
var labels = arr.map((v) => v[0]); 
console.log(labels); // ["Direct", "Organic Search", "Referral"] 
+0

ES6..much clean –

+1

ES6 ...多分互換性がありません。 OPはES6でこの質問にタグをつけなかったし、それを使うことを暗示しなかった。この回答は、質問とは異なる言語で表示されます。 – Cerbrus

+1

ES6 ...私たちは将来の技術的進歩を信じています – RomanPerekhrest

0

あなたが参考のため

var arr1 = []; // your main array 

var labels = arr1.map(function(item){ 
    return item[0]; 
}); 

を以下試すことができ、map

関連する問題