sort()
方法用原地算法对数组的元素进行排序,并返回数组,原数组将被改变。默认排序顺序是在将元素转换为字符串,然后比较它们的UTF-16代码单元值序列时构建的
// 现在你想让numbers数组按照升序来排序
let numbers = [4, 2, 5, 1, 3];
numbers.sort(function (a, b) {
return a - b;
});
console.log(numbers);// [1, 2, 3, 4, 5]
//也可以写成
let numbers1 = [4, 2, 5, 1, 3];
numbers1.sort((a, b) => a - b);
console.log(numbers1);// [1, 2, 3, 4, 5]
// 现在你想让numbers2数组按照降序来排序
let numbers2 = [33, 44, 2, 5, 1, 3];
numbers2.sort((a, b) => b - a);
console.log(numbers2);// [44, 33, 5, 3, 2, 1]
// 若 a 小于 b,即 a - b 小于零,则返回一个小于零的值,数组将按照升序排列。
// 若 a 等于 b,则返回 0。
// 若 a 大于 b, 即 a - b 大于零,则返回一个大于零的值,数组将按照降序排列。
//现在我想把对象按照年龄升序来排
let xie = {
name: 'xie',
age: 22,
sex: '男'
};
let luo = {
name: 'luo',
age: 21,
sex: '女'
};
let meng = {
name: 'meng',
age: 20,
sex: '男'
};
let arr=[xie,luo,meng];
arr.sort((a,b)=>{
return a.age-b.age;
});
console.log(arr);
splice()
方法通过删除或替换现有元素或者原地添加新的元素来修改数组,并以数组形式返回被修改的内容。此方法会改变原数组。
let array1 = [11, 22, 33];
console.log(array1.splice(0,1,44));//[11]
console.log(array1);//[44,22,33]
console.log(array1.splice(1,2));//[22,33]
console.log(array1);//[44]
console.log(array1.splice(0,0,11,22,33));//[]
console.log(array1);//[11,22,33,44]
Math.max()
函数返回一组数中的最大值。
// 返回给定的一组数字中的最大值。
// 如果给定的参数中至少有一个参数无法被转换成数字,则会返回 NaN。
let arr = [1, 2, 33, 4, 5];
console.log(Math.max(...arr));//33