3 farklı numaradan en yüksek sayıyı bulmalıyım. Bulduğum tek şey, max() ama sadece 2 rakamı kullanabilirsiniz.Javascript max() işlevi 3 sayı için
En iyi yol nedir?
3 farklı numaradan en yüksek sayıyı bulmalıyım. Bulduğum tek şey, max() ama sadece 2 rakamı kullanabilirsiniz.Javascript max() işlevi 3 sayı için
En iyi yol nedir?
Math.max işlev isteğe bağlı herhangi bir sayıyı kabul edebilir:
Sözdizimi:
Math.max([value1[,value2[, ...]]])
Kullanımı:
Örneğinvar max = Math.max(num1, num2, num3);
:
alert(Math.max(1,2,3,4,5,6)); // alerts 6
önermek @Pascal MARTIN olarak Hatta apply yardımıyla, sayıların bir dizinin maksimum değeri elde için kullanabilirsiniz:
Array.prototype.max = function() {
return Math.max.apply(Math, this);
};
var max = [1,2,3,4,5,6].max(); // 6
hemen hemen tüm dillere, bir iki kere max kullanabilirsiniz: As @CMS işaret
Math.max(num1, Math.max(num2, num3))
JavaScript özellikle Math.max parametreleri rastgele sayıda verir
:Math.max(num1, num2, num3);
+1 Got ile kullanma. –
Math.max herhangi bir keyfi argümanı kabul edebilir, aşağıdaki cevaba bakın: http://stackoverflow.com/questions/1418569/javascript-max-function-for-3-numbers/1418646#1418646 – CMS
@CMS: +1 Çok havalı bir şey öğrendim. Başka bir ana akım dilinin farkında değilim, ancak bunu yapan kişi, değişken sayıda işlev argümanını kabul edebilecek herhangi bir dilde olabilir. –
Değerlerinizi bir diziye aktarınsırasıyla maksimum ve minimum değerler içinve kullanımı Math.min.apply(null, arr)
veya Math.max.apply(null, arr)
:
var arr = [];
arr.push(value1);
arr.push(value2);
arr.push(value3);
var minValue = Math.min.apply(null, arr);
var maxValue = Math.max.apply(null, arr);
var numbers = [2,3,1];
numbers.sort(function(a,b){return b-a});
console.log("max number is", numbers[0]); // max number is 3
Doğru, Teşekkürler iMani! – atom
basitlik güzelliği sevmeye yeni yayılmış operatörü
var num = [23,34,56,72,1,22];
Math.max(...num)
Bu kod soruyu yanıtlarken, sorunun nasıl ve/veya neden çözüldüğüne ilişkin ek bağlam sağlayarak yanıtın uzun vadeli değerini artıracaktır. – Badacadabra
@Badacadabra Bu cevabın değeri biraz daha az kod yazmanız ve "yayılan operatörü" kullanmanız gerekiyor Şimdi umarım u yorum yapmalıyım –
+1 Neden bu kadar hasn 'bilmiyorum Daha önce aldım ve bu kadar basit bir çözüm. Eğer bir dizi ile çalışmak istiyorsanız sadece Math.max.apply (Math, array) –
kullanın. Google, SO'yu seviyor gibi görünüyor. İlk mesajın yayınlanmasından 45 dakika sonra 'javascript max' yazıyordum ve bu cevabı ilk sayfada buldum :-) –