2017-12-02 10 views
0

ここからわかるように、x、yの代わりに同じ名前と他の要素を持つ2つのオブジェクトの配列があります。私はログをコンソールにしようとしていますが、うまく動作し、2つのオブジェクトを取得しています。私の質問は、どのように私はconsole.logだけ、それらのうちの最初のものですか?類似の2つのオブジェクトを持つ配列から1つのオブジェクトを取得します

forEach(function(hero, i){...

var _hero = [{ 
 
    nick: "Mike", 
 
    lvl: 500, 
 
    x: 10, 
 
    y: 10 
 
}, { 
 
    nick: "Mike", 
 
    lvl: 500, 
 
    x: 15, 
 
    y: 15 
 
}] 
 
let main =() => { 
 
    _hero.forEach(function(_hero) { 
 
    if (_hero.nick == "Mike") { 
 
     console.log(_hero); 
 
    } 
 
    }); 
 
}; 
 
main();

+3

うーん '' 'はconsole.logマッチング(_hero [0])' '' – dashton

答えて

1

使用二番目のパラメータ以下のような繰り返しをチェックする:

var _hero = [{ 
 
    nick: "Mike", 
 
    lvl: 500, 
 
    x: 10, 
 
    y: 10 
 
}, { 
 
    nick: "Mike", 
 
    lvl: 500, 
 
    x: 15, 
 
    y: 15 
 
}] 
 
let main =() => { 
 
    _hero.forEach(function(_hero,i) { 
 
    if (_hero.nick == "Mike" && i == 0) { 
 
     console.log(_hero); 
 
    } 
 
    }); 
 
}; 
 
main();

+0

ので、単純な、いまいましいです!ありがとう! :) – Hatchling

+3

もしあなたがそうしているのであれば、ループを使っていても何がポイントですか? 'console.log(_hero [0]);' – fubar

+0

@Hatchling、そうです...あなたは大歓迎です。 – Mamun

2

使用array.findあなただけFを与えますIRST要素

var _hero = [{ 
 
    nick: "Mike", 
 
    lvl: 500, 
 
    x: 10, 
 
    y: 10 
 
}, { 
 
    nick: "Mike", 
 
    lvl: 500, 
 
    x: 15, 
 
    y: 15 
 
}] 
 

 
console.log(_hero.find(data=>data.nick ==='Mike'));

+0

foreachメソッドを使って解決策がありました。質問者は – moon

+1

本当にそう答えました!ここでforeachを使用する必要はありません – Sajeetharan

関連する問題