欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

js如何查找json數(shù)據(jù)中的最大值和最小值方法

 更新時間:2023年04月17日 17:10:53   作者:上網(wǎng)的蟲不叫網(wǎng)蟲  
這篇文章主要介紹了js如何查找json數(shù)據(jù)中的最大值和最小值方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

js查找json數(shù)據(jù)中的最大值和最小值

js操作數(shù)組的方式有很多種,查找json數(shù)據(jù)中的最大值和最小值也是經(jīng)常用到,那么接下來就介紹2種方式來實現(xiàn)。

先準備好json數(shù)據(jù),根據(jù)數(shù)組中的age值比較大?。?/p>

var array = [
?? ?{name:'張三1',age:10},
?? ?{name:'張三2',age:40},
?? ?{name:'張三3',age:40},
?? ?{name:'張三4',age:33},
?? ?{name:'張三5',age:2},
?? ?{name:'張三6',age:2},
]

使用Math對象來獲取最大值和最小值

1. 獲取最大值:

var max = Math.max.apply(Math, array.map(function(o) {
?? ?return o.age;
}))
console.log(max);// 40

2. 獲取最小值:

var min = Math.min.apply(Math, array.map(function(o) {
?? ?return o.age;
}))
console.log(min);// 2

使用for循環(huán)來獲取最大值和最小值

1. 獲取最大值:

var max = arr[0].age;
?? ?for (var i = 1; i < arr.length; i++) {
?? ?max = max < arr[i].age ? arr[i].age : max;
}
console.log(max);// 40

2. 獲取最小值:

var min = arr[0].age;
for (var i = 1; i < arr.length; i++) {
?? ?min = min > arr[i].age ? arr[i].age : min;
}
console.log(min);// 2

獲取最大值和最小值返回對應的json數(shù)據(jù)

1. 獲取含有最大值的數(shù)據(jù):

var maxAgeArr = arr.filter(item=>item.age==max);
console.log(maxAgeArr);//[{name:'張三2',age:40},{name:'張三3',age:40}]

2. 獲取含有最小值的數(shù)據(jù):

var minAgeArr = arr.filter(item=>item.age==min);
console.log(minAgeArr);//[{name:'張三5',age:2},{name:'張三6',age:2}]

用reduce()獲取JSON中某個字段值最大的項

需求

獲取JSON中value值最大的項

[{
  value: 1
},{
  value: 2
},{
  value: 3
}]

語法

array.reduce(callback[, initialValue])
參數(shù)說明
array必需。數(shù)組對象
callback必需。一個接受最多四個參數(shù)的函數(shù)。對于數(shù)組中的每個元素,reduce 方法都會調用 callback函數(shù)一次。
initialValue可選。如果指定 initialValue,則它將用作初始值。第一次調用 callback 函數(shù)會將此值作為參數(shù)。

返回值

通過最后一次調用回調函數(shù)獲得的累積結果。

回調函數(shù)語法

function callbackfn(previousValue, currentValue, currentIndex, array)
參數(shù)說明
previousValue通過上一次調用回調函數(shù)獲得的值。如果向 reduce 方法提供 initialValue,則在首次調用函數(shù)時,previousValue 為 initialValue。
currentValue當前數(shù)組元素的值。
currentIndex當前數(shù)組元素的數(shù)字索引。
array包含該元素的數(shù)組對象。

示例:

let maxValue = data.reduce((prev, cur) => {
  return prev.value > cur.value ? prev : cur
})
// maxValue = { value:3 }

總結

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

最新評論