javascript数组中不常用到但很有用方法:
1.数组之和
let arr=[1,2,3,4,5]
let result = arr.reduce((total, num) => {
return total + num;
},0);
console.log(result) // 15
2.数组中最大值
let arr = [1, 3, 7, 4, 6];
let result = arr.reduce((total, num) => {
return Math.max(total, num);
}, 0);
console.log(result); // 7
3.查找数组中是否存在某个值
let arr = [1, 3, 7, 4, 6];
let result = arr.some((num) => {
return num == 3;
});
console.log(result); // true
let result2 = arr.some((num) => {
return num == 5;
});
console.log(result2); // false
4.查找数组中某个值的"位置"(存在返回索引,不存在返回-1)
let arr= [
{ name: "num1" },
{ name: "num2" },
{ name: "num3" },
{ name: "num4" },
{ name: "num5" },
];
let result = test.findIndex((num) => {
return num.name == "num3";
});
console.log(result); // 2
let resurt2 = test.findIndex((num) => {
return num.name == "num";
});
console.log(resurt2); // -1
5.数组排序
//在普通数组中使用
let arr = [2017, 2012, 2015, 2020];
arr.sort((a, b) => {
return a - b;
});
console.log(arr); //[2012, 2015, 2017, 2020]
//在对象数组中使用
let arr2 = [{ year: 2017 }, { year: 2012 }, { year: 2015 }, { year: 2020 }];
arr2.sort((a, b) => {
return a.year - b.year;
});
console.log(arr2); // [{ year: 2012 }, { year: 2015 }, { year: 2017 }, { year: 2020 }]
6.反转数组的元素顺序
let arr = [2017, 2012, 2015, 2020];
arr.reverse()
console.log(arr); //[2020, 2015, 2012, 2017]
***以上方法均可用于对象数组