2016-08-06 11 views
-3

私は配列を持っている:1から2つのjavascript配列を作成するにはどうすればよいですか?

phrasePosNameSources = [ 
    { 
     id: 0, 
     longName: '#', 
     name: '#' 
    }, 
    { 
     id: 1, 
     longName: 'Noun', 
     name: 'N' 
    }, 
    { 
     id: 2, 
     longName: 'Verb', 
     name: 'V' 
    } 

]; 

私は何をしたいのは、このようになり、このデータをオフに基づいて、2つのアレイを作成することです:

phrasePosNames = [ 
    { 
     id: 0, 
     name: '#' 
    }, 
    { 
     id: 1, 
     name: 'N' 
    }, 
    { 
     id: 2, 
     name: 'V' 
    } 

]; 

phrasePosLongNames = [ 
    { 
     id: 0, 
     name: '#' 
    }, 
    { 
     id: 1, 
     name: 'Noun' 
    }, 
    { 
     id: 2, 
     name: 'Verb' 
    } 
]; 

をどのように私ができる誰かが私にいくつかのアイデアを与えることができます現代のブラウザでこれを行いますか?

+5

あなたは、配列をループとは、あなたがこのアプローチ上の任意の難しさに直面しなかった、あなたの要件に応じて2つの異なるアレイを構築することができますか? – Siva

+0

'var phrasePosNames = phrasePosNameSources.map(item => {id:item.id、name:item.name})' 'var phrasePosLongNames = phrasePosNameSources.map(item => {id:item.id、name:item.longName }) ' – vlaz

+0

@vid - これを回答として追加して受け入れることができますか?ありがとう –

答えて

1

このコードブロックをインラインで参照することができます。上記のコメントを参考にしてください。これが役立つことを願って、これを明確にする必要がある場合はお知らせください。

ワーキングフィドル:https://jsfiddle.net/s8e108cm/

var phrasePosNameSources = [ 
    { 
     id: 0, 
     longName: '#', 
     name: '#' 
    }, 
    { 
     id: 1, 
     longName: 'Noun', 
     name: 'N' 
    }, 
    { 
     id: 2, 
     longName: 'Verb', 
     name: 'V' 
    } 

]; 

var phrasePosNames = []; 
var phrasePosLongNames = []; 
for (var i=0; i < phrasePosNameSources.length; i++) { 
phrasePosNames.push({ 
    id: phrasePosNameSources[i].id, 
    name: phrasePosNameSources[i].name 
}); 
phrasePosLongNames.push({ 
    id: phrasePosNameSources[i].id, 
    name: phrasePosNameSources[i].longName 
}); 
} 
関連する問題