# 1. every(): 检测数组所有元素是否都符合指定条件,一个不满足返回false(且剩余的元素不会再进行检测),否则返回true,
# some(): 只要有一个满足就返回true(剩余的元素不会再执行检测),都不满足返回false
const arr = [10, 15, 16, 14, 13, 17];
const cookArr = arr.every((item) => { return item > 9 });
console.log(cookArr); // true
# 2. concat(): 方法用于连接两个或多个数组,该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本
const hege = ["Cecilie", "Lone"],
stale = ["Emil", "Tobias", "Linus"],
kai = ["Robin"],
children = hege.concat(stale, kai);
console.log(children); // ['Cecilie', 'Lone', 'Emil', 'Tobias', 'Linus', 'Robin']
# 3. entries(): 方法返回一个数组的迭代对象,该对象包含数组的键值对 (key/value)
const arr = [10, 5, 20];
const arrItem = arr.entries();
console.log(arrItem.next().value); // [0, 10]
console.log(arrItem.next().value); // [1, 5]
console.log(arrItem.next().value); // [2, 20]
# 4. find(): 返回通过测试(函数内判断)的数组的第一个元素的值(没有则返回undefined)
# findIndex(): 返回下标
const arr = [5, 10, 8, 20];
const setArr = arr.find((item) => { return item > 15 } );
console.log(setArr); // 20
# 5. Array.from(): 字符串转数组
console.log(Array.from("RUNOOB")); // [ 'R', 'U', 'N', 'O', 'O', 'B' ]
# 6. includes(): 用来判断一个数组是否包含一个指定的值,如果是返回 true,否则false
console.log([1, 2, 3].includes(2)); // true
console.log([1, 2, 3].includes(4)); // false
console.log([1, 2, NaN].includes(NaN)); // true
console.log([1, "a", NaN].includes("a")); // true
# 7. indexOf(): 返回数组中某个指定的元素位置
console.log([1, 2, 3].indexOf(3)); // 2
# 8. join(): 方法用于把数组中的所有元素转换一个字符串(用指定符号分割)
# toString(): 数组转字符串
console.log(["1", 2, "a"].join("-")); // 1-2-a
console.log(["1", 2, "a"].join()); // 1,2,a
# 9.
unshift(): 头部添加
shift(): 头部删除
pop(): 尾部删除
push(): 尾部添加
# 10. reduce(): 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值
# reduceRight(): 从右到左
console.log([1, 7, 15].reduce((x, y) => x + y)); // 1+7+15
console.log([1, 7, 15].reduce((x, y) => x * y)); // 1*7*15
# 11. reverse(): 方法用于颠倒数组中元素的顺序(会改变原始数组)
console.log([1, "a", "4", 10].reverse()); // [10, "4", "a", 1]
# 12. slice(): 从已有的数组中返回选定的元素(不会改变原始数组)
console.log([5, 4, 7, 8, 3, 10, 9].slice(3, 5)) // [8, 3]
# 13. sort(): 对数组的元素进行排序(会改变原始数组)
console.log([5, 4, 7, 8, 3, 10, 9].sort((a, b) => a-b)) // [3, 4, 5, 7, 8, 9, 10]
console.log([5, 4, 7, 8, 3, 10, 9].sort((a, b) => b-a)) // [10, 9, 8, 7, 5, 4, 3]
# 14. splice(): 方法用于添加或删除数组中的元素(会改变原始数组)
console.log([5, 4, 7, 8, 3, 10, 9].splice(3, 2)) // [8, 3]
const arr = [5, 4, 7, 8, 3, 10, 9];
arr.splice(3, 2, "a", "b", "c")
console.log(arr) // [5, 4, 7, 'a', 'b', 'c', 10, 9]