JavaScript数组的操作方法:
(代码均在控制台运行,注意写法哦左边有目录方便查找哦)
首先我们创建一个数组:
var array=[1,2,3,4]//创建一个新数组
join()
方法,可以使用不同的分隔符来构建这个字符串。join()方
法只接收一个参数,即用作分隔符的字符串,然后返回包含所有数组项的字符串。如果不给 join()方法传入任何值,或者给它传入 undefined,则使用逗号作为分隔符。
array.join("||")
//'1||2||3||4'
push()
方法向数组末尾添加新项目,并返回新长度。
提示:新的项目将被添加到数组的末尾
那么在第一个添加可以吗?
当然可以—unshift()
array.push("5")
//5
array
// [1, 2, 3, 4, '5']
pop()
移除最后一个数组元素:
array.pop()
//'5'
array
//(4) [1, 2, 3, 4]
reverse()
方法会反转数组项的顺序
array.reverse()
(4) [4, 3, 2, 1]
sort()
按升序排列数组项——即最小的值位于最前面,最大的值排在最后面
var values = [0, 1, 5, 10, 15];
values.sort();
//(5) [0, 1, 10, 15, 5]
疑问:出现问题了怎么没有从大到小比较呢?这里就要强调一下sort的问题了
sort()方法会调用每个数组项的 toString()转型方法,然后比较得到的字符串,以确定如何排序。即使数组中的每一项都是数值,sort()方法比较的也是字符串为数值 5 虽然小于 10,但在进行字符串比较时,"10"则位于"5"的前面,于是数组的顺序就被修改了
concat()
可以基于当前数组中的所有项创建一个新数组
这个方法会先创建当前数组一个副本,然后将接收到的参数
添加到这个副本的末尾,最后返回新构建的数组。
var array2=array.concat(5,6,7,8)
//undefined
array2
//(8) [4, 3, 2, 1, 5, 6, 7, 8]
slice()
可以接受一或两个参数,即要返回项的起始和结束位置。
在只有一个参数的情况下,slice()方法返回从该参数指定位置开始到当前数组末尾的所有项。如果有两个参数,该方法返回起始和结束位置之间的项—
—但不包括结束位置的项。
注意这个方法不会影响原数组!
array2.slice(1)
//(7) [3, 2, 1, 5, 6, 7, 8]
array2.slice(1,4)
//(3) [3, 2, 1]
array2
//(8) [4, 3, 2, 1, 5, 6, 7, 8]
敲重点最常用的最重要的来了
splice()
splice()的主要用途是向数组的中部插入项方式则有如下 3 种:
(引用红皮宝典说法)
删除:可以删除任意数量的项,只需指定 2 个参数:要删除的第一项的位置和要删除的项数。
array.splice(0,2)
//(2) [4, 3]
//代码解读array.splice([从下标0开始][删除2个])
array
//(2) [2, 1]
插入:可以向指定位置插入任意数量的项,只需提供 3 个参数:起始位置、0(要删除的项数)
和要插入的项。如果要插入多个项,可以再传入第四、第五,以至任意多个项。
array.splice(0,0,4,3)
//[]
//代码解读array.splice([从下标0开始][删除0个][加入4,3])
array
//(4) [4, 3, 2, 1]
替换:可以向指定位置插入任意数量的项,且同时删除任意数量的项,只需指定 3 个参数:起
始位置、要删除的项数和要插入的任意数量的项。插入的项数不必与删除的项数相等。
array
//(4) [4, 5, 6, 7]
array.splice(0,1,4,5,6)
//代码解读array.splice([从下标0开始][删除一个][加入4,5,6])
//[4]
array
//(6) [4, 5, 6, 5, 6, 7]
好的1.0数组的基础就到这里下午我给大家更新2.0拥有遍历等等。