一、数组常用方法
JS 中提供的可对数组快速操作的方法,其中,方法1 - 7均会改变原始数组,方法8 - 16不会改变原始数组。
- push()
语法:数组.push(数据)
作用:将数据追加到数组的末尾
返回值:追加数据后数组的最新长度 - pop()
语法:数组.pop()
作用:删除数组的最后一个数据
返回值:被删除的数据 - unshift()
语法:数组.unshift(数据)
作用:在数组的最前方添加一个数据
返回值:添加数据后数组的最新长度 - shift()
语法:数组.shift()
作用:删除数组最前面的一个数据
返回值:被删除的数据 - reverse()
语法:数组.reverse()
作用:将数组反转,数据顺序颠倒
返回值:反转后的数据 - splice()
语法:数组.splice(开始索引,多少个,要插入的数据)
作用:删除数组中若干数据,并选择是否插入新的数据
返回值:以新数组形式返回被删除的数据
注意:
(1)括号内的参数都有默认值,可以不填写,开始索引默认为 0,表示从头开始,多少个默认是 0,表示不删除数据,要插入的数据默认没有,表示不插入数据;
(2)三个参数可以只填前面几个,删除时包含开始索引进行删除,且插入的位置为删除内容的位置; - sort()
语法一:数组.sort()
语法二:数组.sort(function(a,b){ return a - b })
语法三:数组.sort(function(a,b){ return b - a })
作用:将数组进行排序
返回值:排序好的新数组
注意:
(1)语法一不是按照从大到小或从小到大的顺序进行排序,而是按照字符串形式排序,首位相同的排在一起,如:11,21,1,2 排序后为 1,11,2,21;
(2)语法二可使得数组按从小到大的升序形式排列,而语法三则是从大到小的降序形式; - join()
语法:数组.join(连接符)
作用:将数组用连接符连接成为一个字符串
返回值:连接好的字符串
注意:不写连接符或直接写入 undefined 时,默认用逗号连接,其余连接符在括号内需加上双引号 - concat()
语法:数组.concat(其他数组)
作用:将其他数组和原始数组拼接在一起
返回值:拼接好的新数组 - slice()
语法:数组.slice(开始索引,结束索引)
作用:截取数组中的某些数据
返回值:以新数组形式返回截取出来的数据
注意:
(1)括号内的参数都有默认值,可以不填写,开始索引默认为 0,表示从头开始,结束索引默认为 数组长度,表示到结尾;
(2)包前不包后,截取的数据包含开始索引的数据,不包含结束索引的数据; - indexOf()
语法:数组.indexOf(数据)
作用:查找该数据在数组中的索引位置
返回值:一个数字,若有该数据,则返回第一次出现的索引位置,若没有该数据,则返回 -1 - forEach()
语法:数组.forEach(function(item,index,arr){ })
作用:遍历数组
返回值:无
注意:此处函数作为该方法的参数,该函数会根据数组长度来执行,执行次数与数组长度一致,函数中可接受三个形参,item 表示函数执行时当前所在项,index 表示函数执行时当前项的索引,arr 表示原始数组 - map()
语法:数组.map(function(item,index,arr){ })
作用:映射数组
返回值:映射后的新数组
注意:语法与 forEach 类似,该方法在函数中以 return 的方式书写映射条件,如:在函数中写 return item*10,则数组中每一项都会变大 10 倍,且该方法整体返回映射后的新数组,可设一个变量接收 - filter()
语法:数组.filter(function(item,index,arr){ })
作用:过滤数组
返回值:过滤后的新数组
注意:语法与 forEach 类似,该方法在函数中以 return 的方式书写过滤条件,如:在函数中写 return item>10,则数组中只保留大于 10 的数据 - every()
语法:数组.every(function(item,index,arr){ })
作用:判断数组是不是每一项都满足条件
返回值:一个布尔值
注意:语法与 forEach 类似,该方法在函数中以 return 的方式书写判断条件,如:在函数中写 return item>10,则当数组中每项都大于 10 时,返回结果 true,否则返回 false - some()
语法:数组.some(function(item,index,arr){ })
作用:判断数组是不是有某一项满足条件
返回值:一个布尔值
注意:语法与 forEach 类似,该方法在函数中以 return 的方式书写判断条件,如:在函数中写 return item>10,则当数组中其中一项大于 10 时,返回结果 true,全都不大于 10 时才返回 false
二、结语
本学习笔记主要用于记录博主个人的前端学习过程,目前学习资源来自b站千锋的前端1000集教学,如笔记内容有写错的地方,希望大家能够指出。同时,欢迎看到博文的小伙伴们与我一同学习!