const array = [5, 4, 7, 8, 9, 2];
// 求和
array.reduce((a, b) => a + b);
// 最大值
array.reduce((a, b) => a > b ? a : b);
// 最小值
array.reduce((a, b) => a < b ? a : b);
let arr = [23,1,33,6,8,2];
max = Math.max(...arr);
console.log(max) //33
min = Math.min.apply(null,arr)
console.log(min) //1
// 對(duì)字符串锌半、數(shù)字或?qū)ο髷?shù)組進(jìn)行排序
// 排序字符串?dāng)?shù)組
const stringArr = ["Joe", "Kapil", "Steve", "Musk"]
stringArr.sort();
stringArr.reverse();
// 排序數(shù)字?jǐn)?shù)組
const array = [40, 100, 1, 5, 25, 10];
// 從小到大
array.sort((a, b) => a - b);
// 從大到小
array.sort((a, b) => b - a);
// 返回值大于0 即a-b > 0 盅安, a 和 b 交換位置
// 返回值大于0 即a-b < 0 栅迄, a 和 b 位置不變
// 返回值等于0 即a-b = 0 , a 和 b 位置不變
// 對(duì)象數(shù)組排序
const objectArr = [
{ first_name: 'Lazslo', last_name: 'Jamf' },
{ first_name: 'Pig', last_name: 'Bodine' },
{ first_name: 'Pirate', last_name: 'Prentice' }
];
objectArr.sort((a, b) => a.last_name.localeCompare(b.last_name));
// 從數(shù)組中過濾出虛假值
const array = [3, 0, 6, 7, '', false];
array.filter(Boolean); // [3, 6, 7]
// 刪除重復(fù)值
const array = [5, 4, 7, 8, 9, 2, 7, 5];
array.filter((item, idx, arr) => arr.indexOf(item) === idx);
// or
const nonUnique = [...new Set(array)];
// 輸出: [5, 4, 7, 8, 9, 2]
// 打亂數(shù)組
const list = [1, 2, 3, 4, 5, 6, 7, 8, 9];
list.sort(() => {
return Math.random() - 0.5;
});
// 空合并運(yùn)算符 (??) 是一個(gè)邏輯運(yùn)算符,
// 當(dāng)其左側(cè)操作數(shù)為空或未定義時(shí)返回其右側(cè)操作數(shù)章母,否則返回其左側(cè)操作數(shù)茫舶。
const foo = null ?? 'my school';
// 輸出: "my school"
const baz = 0 ?? 42;
// 輸出: 0