たった1行:)
var array = [3 , 6, 2, 56, 32, 5, 89, 32],
largest = array.sort((a,b)=>a-b).reverse()[0];
またはさらに良い
...
largest = array.sort((a,b)=>a-b)[array.length - 1];
UPD、たとえば 9 を配列に追加すると、上記のすべてのコードがうまくいきません。デフォルトでは、並べ替えの文字列として扱われる数字が、より良いバージョンがあるためです。
var array = [3 , 6, 2, 56, 32, 5, 89, 32, 9], largest;
array.sort(function(a, b) {
largest = a > b ? a: b;
});
ただし、forEach
コメントで提案されているパフォーマンス上のループの方が優れています
http://jsperf.com/array-sorting-javascript-stack
UPD2、わかりました。上記のコードにはいくつかの悪い部分が含まれているため、期待どおりに動作しません。別の試み:
array.sort(function(a, b) {
return a - b;
});
largest = array[array.length - 1];