前端学习笔记(数组方法)
根据我自己学习和掌握了解到的数组方法,将其中个人认为较为常见的方法列出如下:
-
length
返回数组的长度。 -
push()
向数组的末尾添加一个或更多元素(包括对象和数组),并返回新的长度。 -
pop()
删除并返回数组的最后一个元素。 -
unshift()
向数组的开头添加一个或更多元素,并返回新的长度。 -
shift()
删除并返回数组的第一个元素。 -
concat()
连接两个或更多的数组(可以是元素),并返回结果。 -
join()
把数组的所有元素放入一个字符串。元素通过指定的分隔符进行分隔。默认是,
分隔var arr = [1, 2, 3, 4]; var str = arr.join('-'); console.log(str); //1-2-3-4 string
-
reverse()
颠倒数组中元素的顺序,返回一个新数组。 -
slice(start,end)
返回一个新的数组,包含从 start 到 end (不包括该元素)的原数组中的元素。var arr = [1, 2, 3, 4]; var arr1 = arr.slice(1, 3); console.log(arr1); // [2,3] console.log(arr); // [1,2,3,4]
注:可使用负值从数组的尾部选取元素。
注:如果 end 未被规定,那么 slice() 方法会选取从 start 到数组结尾的所有元素。
-
splice(index,howmany,item1,.....,itemX)
向/从数组中添加/删除项目,然后返回被删除的项目。
index 必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置;
howmany 必需。要删除的项目数量。如果设置为 0,则会向指定index的位置添加元素;
item1, …, itemX 可选。向数组添加的新项目。// 添加 splice(x, 0, item1, item2, ....) 从 arr[x] 开始添加 item var arr = [1, 2, 3, 4]; var arr1 = arr.splice(1, 0, 5, 6); //[] console.log(arr); // [1,5,6,2,3,4] // 替换 splice(x, y, item1, item2, ....) 从 arr[x] 开始被 item 替换 var arr = [1, 2, 3, 4]; var arr2 = arr.splice(1, 2, 7, 8); //[2,3] console.log(arr); //[1,7,8,4] // 删除 splice(x, y) 从 arr[x] 开始删除 y 个元素 var arr = [1, 2, 3, 4]; var arr3 = arr.splice(1, 2); //[2,3] console.log(arr); // [1,4]
注:该方法会改变原始数组。
-
toString()
任何对象都具有的方法 把数组转换为字符串描述,并返回结果。 -
valueof()
返回数组对象的原始值 -
forEach()
对数组的每一项运行给定的函数 该方法没有返回值var arr = [1, 2, 3, 4]; arr.forEach(function (t) { console.log(t + 1); //2,3,4,5 number });
-
sort()
按字母进行排序var arr = [3, 2, 1, 4]; var arr1 = arr.sort(function (a, b) { return a - b }); console.log(arr1); //[1.2.3.4]
-
filter
对数组的每一项运行给定的函数,返回true的项组成的数组var arr = [1, 2, 3, 4]; var boolArr = arr.filter(function (t) { return t % 2 == 0 }); console.log(boolArr); //[2,4]
-
indexof()
返回第一个给定参数的索引,没有找到则返回false -
lastIndexOf()
返回数组中搜索到元素最大的索引 -
some()
给数组中的每一项给定特定的函数,如果任一项返回true,则返回true. -
map()
对数组中的每一项给定特定的函数,返回每一项调用函数结果组成的新数组
var arr = [1,2,3,4,5]
let add = (num) =>{
return num + 1;
}
console.log(arr.map(add))//2,3,4,5,6