前言
上一次我们讲解了JavaScript的Array,了解了很多关于Array的属性,方法等。相信大家收益颇多,今天为大家带来更深次的了解,希望您可以学习更多。如果您还没有了解上一课程,请点击:你对JavaScript的Array对象了解有多少?
下方的代码都通过ES6语法,所以您需要先熟悉它。下面我们直奔主题。
Array.from()
Array.from() 方法从一个类似数组或可迭代对象中创建一个新的数组实例。
console.log(Array.from('Javan'));
// output: Array ["J", "a", "v", "a", "n"]
console.log(Array.from([1, 2, 3], x => x + x));
// output: Array [2, 4, 6]
Array.isArray()
Array.isArray(obj) 用于确定obj是否是一个 Array。
Array.isArray([1, 2, 3]);
// true
Array.isArray({foo: 123});
// false
Array.isArray("Javan");
// false
Array.isArray(undefined);
// false
Array.every()
Array.every() 测试数组的所有元素是否都通过了指定函数的测试。
let array1 = [2, 30, 39, 29, 10, 13];
console.log(array1.every(currentValue=>currentValue>1));
// output: true
判断array1里面的每一个元素是否都大于1, 是返回true,否返回false
Array.fill()
arr.fill(value[, start[, end]]) 用一个固定值填充一个数组中从起始索引到终止索引内的全部元素。
用来填充数组元素的值。
起始索引,默认值为0(可选)。
终止索引,默认值为 this.length。
填充的元素区间是 [start, end) , 一个半开半闭区间
let array1 = [1, 2, 3, 4];
// 用0替换array1从下标2到4的元素,不等于4
console.log(array1.fill(0, 2, 4));
// output: [1, 2, 0, 0]
// 用5替换array1从下标1后面的所有元素
console.log(array1.fill(5, 1));
// output: [1, 5, 5, 5]
// 6替换array1所有元素
console.log(array1.fill(6));
// output: [6, 6, 6, 6]
Array.filter()