目录
1、创建数组
1.常规方式
var arr=new Array();
arr[0]='a';
arr[1]=1;
arr[2]='c';
2.简洁方式
var arr=new Array("sa",'ewa','da');
3.字面方式
var arr=["sa",'ewa','da'];
2、属性
3、方法
1.cancat
arr1.concat(arr2)
不改变原数组,返回一个新的数组
2.map
语法:
array.map(function(currentValue,index,arr), thisValue)
3.fliter
检测数组元素,以数组的形式返回符合条件的元素
4.reduce
累计计算数组值,返回一个计算出来的数据,不改变原数组
语法:
array.reduce(function(total, currentValue, currentIndex, arr), initialValue)
参数解释:
5.reduceRight
此时在不设置initialValue的前提下,reduceRight的初值是数组从右到左的第一个元素
6.some
依次检测数组元素是否满足条件,一旦有一个元素满足条件,就返回true,剩下的元素不会在被检测,如果没有则返回false
语法:
array.some(function(currentValue,index,arr),thisValue)
注意:
不会改变原数组
不对空数组进行操作
7.find
返回满足条件的第一个元素 ,从左到右
之后的元素不会再调用检测函数
语法:
array.find(function(currentValue, index, arr),thisValue)
8.findIndex
返回符合条件的元素的索引,没有符合条件的则返回-1,同样,检测到符合条件的就不会
9.every
检测数组中的每个元素是否都符合条件
全部符合则返回true,否则,则返回为false
语法:
array.every(function(currentValue,index,arr), thisValue)
10.includes
检测数组中是否包含一个指定的值
语法:
arr.includes(searchElement)
arr.includes(searchElement, fromIndex)
从fromIndex开始,属于大于等于
11.indexOf
搜索指定元素在数组中的位置,没有则返回-1
12.lastIndexOf
与indexOf相反
13.splice
(前段时间写蓝桥杯题目的时候突然觉得这个方法是截取一段数组,查了资料之后才发现这玩意儿是往数组中删除或者添加元素!!!!浪费了我不少时间🤡)
语法:array.splice(index,howmany,item1,.....,itemX)
参数1是(数组中元素的索引,从0开始)要从那个位置开始操作,包括这个位置
参数2是操作(删除的)个数
参数3、4、5...都是要增加的元素
!!!🧨🧨🧨注意:其返回值是删除的元素,该方法会改变原数组
代码举例(代码背景有点不统一,不要介意😁😁😁,因为这篇博文不是一次写成的,看哪方便就顺手在哪写代码了):
其返回值是删除的元素,该方法会改变原数组
14.slice
截取一部分数组,返回值是 以数组的形式返回的截取的部分,不改变原数组
语法:
array.slice(start, end)
范围是 start<= index<end
代码示例:
15.reverse
反转数组元素顺序,返回一个新的数组,会改变原数组啊🧨🧨🧨
代码示例
16.sort
对数组元素进行排序,按照调用的方法中的操作来控制是升序还是降序
会改变原数组啊🧨🧨🧨是直接对原数组进行排序🧨🧨🧨
语法:
array.sort(sortfunction)
17.flat
较为官方的解释是,扁平化嵌套数组,arr.flat()中的参数指的是扁平化的深度
18.Array.of()
将一组值转化成数组
19.Array.at()
Array.at()其中收取一个参数,可为正可为负,可获取数组指定元素
如果参数为负,那么从右到左数可以得到指定的元素了,最后一个元素索引同样为-1
此时你是不是觉得与数组直接用arr[index]获取元素的规则相同?
不不不,要知道存在即合理🎈
当at括号中的数字是非负数时确实与数组直接用arr[index]获取元素一样
但是,当参数是负数时,arr[index]就不能使用,那么较为官方的解释是
此处跳转->
JavaScript at() 方法 | 菜鸟教程 (runoob.com)
此外,更多更加详细的可以直接去看菜鸟教程
JavaScript Array 对象 | 菜鸟教程 (runoob.com)
4.较为常见的应用
以我之拙见,也就是根据我到目前为止的项目经验来说,用的最多的还是模糊查询
可以去看看这篇博客