JS复习笔记--Array
创建一个数组的方式
let arr = ['one', 'two'];
let arr = new Array();
通过索引 (访问/添加) 数组元素
let arr = ['one', 'two'];
console.log(arr[1]); // two
let arr[2] = 'three';
console.log(arr[2]); // three
修改数组
-
arr.push()
: 将一个元素插入到数组后面,并返回插入位置的索引值let arr = ['one', 'two', 'three'] let newArr = arr.push('four'); // ['one', ... ,'four'] newArr: 4
-
arr.pop()
: 将数组的最后一个元素删除,并返回let arr = ['one', 'two', 'three'] let newArr = arr.pop()
遍历数组
-
every(fun)
: 遍历数组,直到返回一个false,否则返回turnarr.every(function(element, index, array) { return element > 10 //返回turn 或 false })
-
fill(value, start, end)
参数可选 :用一个固定值填充一个数组中从起始索引到终止索引内的全部元素.- value: 用来填充的值
- start: 起始索引,默认为0
- end: 终止索引,默认值为
this.lenght
var numbers = [1, 2, 3] numbers.fill(1); // results in [1, 1, 1]
-
forEach(element, index, array)
方法对数组的每个元素执行一次提供的函数。let a = ['a', 'b', 'c']; a.forEach(function(element) { console.log(element); }); // a // b // c
-
filter()
方法创建一个【新数组】,其包含通过所提供函数实现的测试的所有元素。function bigTen(value) { return value >= 10; } var filtered = [12, 5, 8, 130, 44].filter(bigTen); // filtered is [12, 130, 44] // ES6 way const bigTen = (value) => {value >= 10;} let [...spraed]= [12, 5, 8, 130, 44]; let filtered = spraed.filter(bigTen); // filtered is [12, 130, 44]
-
findIndex(element, index, array)
返回数组中满足提供的测试函数的第一个元素的索引,否则返回 -1function isBigEnough(element) { return element >= 15; } [12, 5, 8, 130, 44].findIndex(isBigEnough); // index of 4th element in the Array is returned, // so this will result in '3'
-
find(element, index, array)
返回数组中满足提供测试函数的第一个元素的值,否则返回undefined
-
find
方法不会改变数组。
-
function isBigEnough(element) {
return element >= 15;
}
[12, 5, 8, 130, 44].find(isBigEnough); // 130
方法
Array.from()
方法从一个类似数组或可迭代的对象中创建一个新的数组实例。
const bar = ["a", "b", "c"];
Array.from(bar);
// ["a", "b", "c"]
Array.from('foo');
// ["f", "o", "o"]
Array.isArraay()
用于确定传递的值是否是一个Array。
Array.isArray([1, 2, 3]);
// true
Array.isArray({foo: 123});
// false
Array.isArray("foobar");
// false
Array.isArray(undefined);
// false
Array.of()
方法创建一个具有可变数量参数的新数组实例,不考虑参数的数量或类型。
Array.of(1); // [1]
Array.of(1, 2, 3); // [1, 2, 3]
Array.of(undefined); // [undefined]
兼容:
if(!Array.of) {
Array.of = function () {
return Array.prototype.slice.call(arguments);
}
}
concat()
方法用于合并两个或者多个数组,【此方法不会更改现有数组,而是返回一个新的数组】
var arr1 = ['a', 'b', 'c'];
var arr2 = ['d', 'e', 'f'];
var arr3 = arr1.concat(arr2);
// arr3 is a new array [ "a", "b", "c", "d", "e", "f" ]
未完 ····