一、JS最大值函數
JS中內置了一個用於獲取數組最大值的函數:Math.max()函數。該函數接受任意數量的參數,返回這些參數中的最大值。示例:
let arr = [1, 5, 3, 2, 4]; let max = Math.max(...arr); // 5
Math.max()函數也可以用apply()函數來調用,只需要將數組轉化為參數列表即可。
let arr = [1, 5, 3, 2, 4]; let max = Math.max.apply(null, arr); // 5
需要注意的是,如果傳入的參數中含有非數字類型,Math.max()函數會返回NaN。
二、JS最大值運算
JS中通過運算符也可以獲取數組最大值。示例:
let arr = [1, 5, 3, 2, 4];
let max = arr[0];
for (let i = 1; i max) {
max = arr[i];
}
}
通過一個for循環,將數組中的每一個元素和當前記錄的最大值max作比較,若當前元素較大,則更新max的值。
三、JS最大值和第二大值
有時候我們還需要獲取數組的最大值和次大值。以下代碼示例是通過冒泡排序獲取最大值和次大值:
let arr = [1, 5, 3, 2, 4];
let max1 = arr[0], max2 = arr[1];
if (max1 < max2) {
[max1, max2] = [max2, max1];
}
for (let i = 2; i max2) {
max2 = arr[i];
if (max2 > max1) {
[max1, max2] = [max2, max1];
}
}
}
四、JS求最大值
除了獲取數組中的最大值,還可以通過apply()函數將數組作為參數傳入Math.max()函數以獲取最大值:
let arr = [1, 5, 3, 2, 4]; let max = Math.max.apply(null, arr);
五、JS用函數求最大值
我們也可以自己實現一個函數來獲取最大值,以下是一個簡單易懂的示例:
function getMax(arr) {
let max = arr[0];
for (let i = 1; i max) {
max = arr[i];
}
}
return max;
}
let arr = [1, 5, 3, 2, 4];
let max = getMax(arr);
六、JS輸出數組最大值
我們可以通過字符串模板來輸出數組中的最大值:
let arr = [1, 5, 3, 2, 4];
let max = Math.max(...arr);
console.log(`數組中的最大值為${max}`);
七、JS最大值判斷
在實際開發中,經常需要判斷某個值是否為最大值,以下是一個簡單的實現方法:
function isMax(arr, num) {
let max = Math.max(...arr);
if (num === max) {
return true;
} else {
return false;
}
}
let arr = [1, 5, 3, 2, 4];
let num = 5;
if (isMax(arr, num)) {
console.log('該數是數組中的最大值。');
} else {
console.log('該數不是數組中的最大值。');
}
八、JS最大值最小值
Math對象除了Math.max()函數外,還內置了一個獲取數組中最小值的函數Math.min()函數。示例:
let arr = [1, 5, 3, 2, 4]; let max = Math.max(...arr); // 5 let min = Math.min(...arr); // 1
九、JS最大值是多少
通過以上探究可以發現,JS中獲取數組最大值的方法有很多種,最大值是由數組中的數值確定的。
綜上所述,本文從函數到運算共介紹了9種獲取JS數組最大值的方法及其實現方式。在實際開發中,可以根據需求選擇適合的方法來獲取數組最大值。代碼示例:
function getMax(arr) {
let max = arr[0];
for (let i = 1; i max) {
max = arr[i];
}
}
return max;
}
function isMax(arr, num) {
let max = Math.max(...arr);
if (num === max) {
return true;
} else {
return false;
}
}
let arr = [1, 5, 3, 2, 4];
let max = Math.max(...arr);
let min = Math.min(...arr);
let max1 = arr[0], max2 = arr[1];
if (max1 < max2) {
[max1, max2] = [max2, max1];
}
for (let i = 2; i max2) {
max2 = arr[i];
if (max2 > max1) {
[max1, max2] = [max2, max1];
}
}
}
console.log(`數組中的最大值為${max}`);
console.log(`數組中的最小值為${min}`);
if (isMax(arr, max)) {
console.log(`數組中的最大值${max}是數組中的最大值。`);
} else {
console.log(`數組中的最大值${max}不是數組中的最大值。`);
}
console.log(`數組中的最大值為${max1},次大值為${max2}`);
console.log(`通過自定義函數獲取的數組中的最大值為${getMax(arr)}`);
原創文章,作者:VEYA,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/133199.html
微信掃一掃
支付寶掃一掃