js查找json数据中的最大值和最小值方法集结

js操作数组的方式有很多种,查找json数据中的最大值和最小值也是经常用到,那么接下来就介绍2种方式来实现。

先准备好json数据,根据数组中的age值比较大小:

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循环来获取最大值和最小值

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数据

1. 获取含有最大值的数据:

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

2. 获取含有最小值的数据:

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

如果有帮助,可以点赞+收藏+关注,后续有更多知识与您分享!!!

欢迎加入QQ技术群:568984539,加群备注‘地区-名字-技术类型’,以防乱加。

关于本文,如果任何疑问的可以在评论区留言,我看到就会第一时间回复的。

猜你喜欢

转载自blog.csdn.net/qq_42961150/article/details/123556651