js查找數組


js查找數組中與目標值最相近的數值

絕對值

例子: arr=[25,28,32,35]

num=30;

那么返回的離得最大值32;

 

function findCloseNum(arr, num) {
var index = 0; // 保存最接近數值在數組中的索引
var d_value = Number.MAX_VALUE; // 保存差值絕對值,默認為最大數值

for (var i = 0; i < arr.length; i++) {
var new_d_value = Math.abs(arr[i] - num); // 新差值

if (new_d_value <= d_value) { // 如果新差值絕對值小於等於舊差值絕對值,保存新差值絕對值和索引
if (new_d_value === d_value && arr[i] < arr[index]) { // 如果數組中兩個數值跟目標數值差值一樣,取大
continue;
}
index = i;
d_value = new_d_value;
}
}
return arr[index]; // 返回最接近的數值
}

 

js查找數組中獲取最大值


function getMax(arr) {
//假設最大值max 為arr[0]
var max = arr[0];
//遍歷對比
for (var i = 0; i < arr.length; i++) {
//若max小於當前項 說明不是最大值 將當前項的值賦予max
// 繼續遍歷對比找到最大的值
if (max < arr[i]) {
max = arr[i];
}
}
return max;
}

js查找數組中獲取最小值

function getMin(arr) {
var min = arr[0];
for (var i = 0; i < arr.length; i++) {
if (min > arr[i]) {
min = arr[i];
}
}

return min;
}

js查找數組中獲取最大值的數值的下標

function getMaxIndex(arr) {
var max = arr[0];
//聲明了個變量 保存下標值
var index = 0;
for (var i = 0; i < arr.length; i++) {
if (max < arr[i]) {
max = arr[i];
index = i;
}
}
return index;
}

js查找數組中獲取最小值的數值的下標

function getMinIndex(arr) {
var min = arr[0];
//聲明了個變量 保存下標值
var index = 0;
for (var i = 0; i < arr.length; i++) {
if (min > arr[i]) {
min = arr[i];
index = i;
}
}
return index;
}

 

 $.inArray(5,[1,2,3,4,5,6,7]) //返回對應的索引

 Array.indexOf(4)//判斷是否包含某個元素,沒有則返回-1

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM