从Javascript中的二维数组返回字符串
我有一个二维数组:从Javascript中的二维数组返回字符串,javascript,arrays,multidimensional-array,Javascript,Arrays,Multidimensional Array,我有一个二维数组: var beatlesComposers = [ ['George', 22 ], ['John', 71 ], ['Paul', 71 ], ['Ringo', 2 ] ]; 第一个元素是作曲家的名字,第二个元素代表作曲家创作的歌曲数量 如何返回最后写入的歌曲数最多的作曲家的姓名(在本例中为'Paul'和71首)?您可以使用reduce查看每个数组的第二个元素并找到最高的。在比较中使用=而不是,使最新元素在平局时获胜 var beatlesComposer
var beatlesComposers = [
['George', 22 ],
['John', 71 ],
['Paul', 71 ],
['Ringo', 2 ]
];
第一个元素是作曲家的名字,第二个元素代表作曲家创作的歌曲数量
如何返回最后写入的歌曲数最多的作曲家的姓名(在本例中为'Paul'和71首)?您可以使用
reduce
查看每个数组的第二个元素并找到最高的。在比较中使用=
而不是
,使最新元素在平局时获胜
var beatlesComposers = [['George', 22 ],['John', 71 ],['Paul', 71 ],['Ringo', 2 ]];
var mostWritten = beatlesComposers.reduce(function(prev, curr){
return curr[1] >= prev[1] ? curr : prev;
});
您可以使用
reduce
查看每个数组的第二个元素并找到最高值。在比较中使用=
而不是
,使最新元素在平局时获胜
var beatlesComposers = [['George', 22 ],['John', 71 ],['Paul', 71 ],['Ringo', 2 ]];
var mostWritten = beatlesComposers.reduce(function(prev, curr){
return curr[1] >= prev[1] ? curr : prev;
});
您始终可以执行基本的数组排序:
var beatlesComposers = [['George', 22 ],['John', 71 ],['Paul', 71 ],['Ringo', 2 ]];
beatlesComposers.sort(function(artist1,artist2){
return artist2[1]-artist1[1]
});
beatlesComposers[0]; //This is now ['John', 71]
现在,“披头士作曲家”中的第一个元素将是创作歌曲最多的艺术家。您可以随时进行基本的数组排序:
var beatlesComposers = [['George', 22 ],['John', 71 ],['Paul', 71 ],['Ringo', 2 ]];
beatlesComposers.sort(function(artist1,artist2){
return artist2[1]-artist1[1]
});
beatlesComposers[0]; //This is now ['John', 71]
现在,“披头士作曲家”中的第一个元素将是创作歌曲最多的艺术家。如果你发布了你尝试过的代码,我们可以帮助你确定为什么它没有按你想要的方式工作。“在这个例子中,保罗与71”约翰怎么样?他也有71。这看起来像是家庭作业。如果你发布了你尝试过的代码,我们可以帮助你确定为什么它没有按你想要的方式工作。“在这个例子中,保罗和71”约翰呢?他还有71个。这看起来像是家庭作业。