常常记不住,还得去翻文档,把常用的总结一下。
Array(数组)常用方法
concat()
方法用于连接两个或多个数组。
该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本。
var first = ["one", "two"];
var second = ["three", "four", "five"];
var res = first .concat(second );
console.log(res); // ["one", "two", "three", "four", "five"]
console.log([...first, ...second]); // ["one", "two", "three", "four", "five"]
join()
方法用于把数组中的所有元素放入一个字符串。
元素是通过指定的分隔符进行分隔的。
var arr= ["Banana", "Orange", "Apple", "Mango"];
console.log(arr.join('-')); //Banana-Orange-Apple-Mango
pop()
方法用于删除并返回数组的最后一个元素。
var arr= ["Banana", "Orange", "Apple", "Mango"];
console.log(arr.pop()); //Mango
console.log(arr); // ["Banana", "Orange", "Apple"]
push()
方法可向数组的末尾添加一个或多个元素,并返回新的长度。
var arr= ["Banana", "Orange", "Apple", "Mango"];
console.log(arr.push('Strawberry')); //5
console.log(arr); // ["Banana", "Orange", "Apple", "Mango", "Strawberry"]
console.log([...arr, 'Strawberry']); //["Banana", "Orange", "Apple", "Mango", "Strawberry"]
reverse()
方法用于颠倒数组中元素的顺序。
var arr= ["国", "中", "你", "爱", "我"];
console.log(arr.reverse()); //["我", "爱", "你", "中", "国"]
shift()
方法用于把数组的第一个元素从其中删除,并返回第一个元素的值。
var arr= ["Banana", "Orange", "Apple", "Mango"];
console.log(arr.shift()); //Banana
console.log(arr); //["Orange", "Apple", "Mango"]
slice()
方法可从已有的数组中返回选定的元素。
var arr= ["Banana", "Orange", "Apple", "Mango"];
console.log(arr.slice(1)); // ["Orange", "Apple", "Mango"]
console.log(arr.slice(1, 3)); //["Orange", "Apple"]
sort()
方法用于对数组的元素进行排序。
var arr= ["Banana", "Orange", "Apple", "Mango"];
console.log(arr.sort()); //["Apple", "Banana", "Mango", "Orange"]
var points = [40,100,1,5,25,10];
console.log(points.sort(function(a,b){return b-a})); //[100, 40, 25, 10, 5, 1]
splice(index,howmany,item1, ..., itemX)
方法可删除从 index 处开始的零个或多个元素,并且用参数列表中声明的一个或多个值来替换那些被删除的元素。
该方法会改变原始数组。
返回被删除的项目。
var arr = ["Banana", "Orange", "Apple", "Mango", "Strawberry"];
var res = arr.splice(1, 2);
console.log(res); // ["Orange", "Apple"]
console.log(arr); //["Banana", "Mango", "Strawberry"]
arr.splice(1, 2,"Hello");
console.log(arr); //["Banana", "Hello", "Mango", "Strawberry"]
toString()
var arr = ["Banana", "Orange", "Apple", "Mango"];
var str = arr.toString();
console.log(str); //Banana,Orange,Apple,Mango
unshift()
方法可向数组的开头添加一个或更多元素,并返回新的长度。
var arr= ["Banana", "Orange", "Apple", "Mango"];
console.log(arr.unshift('Strawberry')); //5
console.log(arr); //["Strawberry", "Banana", "Orange", "Apple", "Mango"]
indexOf()
方法可返回某个指定的字符串值在字符串中首次出现的位置。
var arr= ["Banana", "Orange", "Apple", "Mango"];
console.log(arr.indexOf("Apple")); //2
console.log(arr.indexOf("Hello")); //-1
一些好玩的
from()
方法从一个类似数组或可迭代对象创建一个新的,浅拷贝的数组实例。
var arr= ["Banana", "Orange", "Apple", "Mango", "Apple", "Apple"];
console.log(Array.from(new Set(arr))); //["Banana", "Orange", "Apple", "Mango"]
map()
方法创建一个新数组,其结果是该数组中的每个元素是调用一次提供的函数后的返回值。
var arr = [1, 4, 9, 16];
var res = arr.map(x => x * 2);
console.log(res); //[2, 8, 18, 32]
fill()
方法用一个固定值填充一个数组中从起始索引到终止索引内的全部元素。不包括终止索引。
var arr = new Array(8);
console.log(arr); // [empty × 8]
console.log(arr.fill('1',2,4)); //[empty × 2, "1", "1", empty × 4]
console.log(arr.fill('8')); //["8", "8", "8", "8", "8", "8", "8", "8"]
includes()
方法用来判断一个数组是否包含一个指定的值,根据情况,如果包含则返回 true,否则返回false。
var arr= ["Banana", "Orange", "Apple", "Mango"];
console.log(arr.includes("Banana")); //true
console.log(arr.includes("Hello")); //false
some()
方法测试数组中是不是至少有1个元素通过了被提供的函数测试。它返回的是一个Boolean类型的值。
var arr= [1,2,3,4];
console.log(arr.some(item => item > 3)); //true
console.log(arr.some(item => item > 5)); //false
every()
方法测试一个数组内的所有元素是否都能通过某个指定函数的测试。它返回一个布尔值。
var arr= [1,2,3,4];
console.log(arr.every(item => item > 0)); //true
console.log(arr.every(item => item > 1)); //false
filter()
方法创建一个新数组, 其包含通过所提供函数实现的测试的所有元素。
var arr= [1,2,3,4];
console.log(arr.filter(item => item > 2)); //[3, 4]
---如有错误敬请指正---