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