由于最近都在freecodecamp上刷代码,运用了很多JavaScript数组的方法,因此做了一份关于JavaScript教程的整理,具体内容如下:
一、普通方法
1、join() 将数组元素连接在一起,并以字符串形式返回
参数:可选,指定元素之间的分隔符,没有参数则默认为逗号
返回值:字符串
对原数组的影响:无
2、reverse()将数组的元素顺序变成倒序返回
参数:无
返回值:数组
对原数组的影响:原数组被修改为倒序排列之后的数组
3、sort()对数组元素进行排序并返回
参数:可选,排序的方法函数,没有参数则默认按照字典顺序排序
返回值:排序后的数组
对原数组的影响:原数组被修改为排序之后的数组
4、concat()连接若干个数组
参数:若干个,可以是数组或者是元素,
返回值:连接后的新数组
对原数组的影响:无
5、slice()从数组中截下若干个元素,组成新的数组并返回
参数:两个数字,其中第二个可选,第一个参数表示开始截取的第一个元素的index值(截取时包含这个元素),如果第一个参数是负数,则指截取的元素从元素结尾开始算起(如:-1表示最后一个元素);第二个参数的意义则是停止截取的元素的index值(截取时不包含这个字符),负值情况同第一个参数
返回值:截取的新数组
对原数组的影响:无
6、splice()从数组中替换、删除或插入元素并返回新数组
参数:若干个参数,其中第一个参数必需,其他为可选,第一个参数为操作的第一个index值,此时无第二个参数时,将删除第一个参数(包含第一个参数)的index值之后所有的元素,含有第二个参数时,第二个参数删除元素的个数,并返回这些元素组成的新数组;当第二个参数为0时,后面的参数会作为新的元素插入原数组,并返回一个空数组;当第二个参数不为0,且含有其他参数时,则进行替换操作,并返回替换之前那些原来元素组成的新数组
返回值:删除元素组成的新数组
对原数组的影响:会对原数组进行替换、删除、插入等操作
7、push()向数组的尾部添加元素并返回数组长度
参数:若干个,向数组尾部添加的元素
返回值:添加元素之后的数组的长度
对原数组的影响:原数组尾部被添加元素
8、pop()从数组尾部删除一个元素
参数:无
返回值:删除的元素
对原数组的影响:原数组尾部被删除一个元素
9、unshift()向数组的头部添加元素并返回数组长度
参数:若干个,向数组头部添加的元素
返回值:添加元素之后的数组的长度
对原数组的影响:原数头部被添加元素
10、shift()从数组头部删除一个元素
参数:无
返回值:删除的元素
对原数组的影响:原数组头部被删除一个元素
11、toString()将数组转化为字符串,每个元素之间以逗号相隔
参数:无
返回值:形成的字符串(二维数组中也只是连接二维数组的元素)
对原数组的影响:无
12、toLocaleString()是toString()方法的本地化版本
--------------------------------------------------------------------------------
二、迭代器方法
1、foreach()对数组每个元素调用方法
参数:一个函数
返回值:无
对原数组的影响:无
2、every()接受一个返回值为布尔类型的函数,数组中所有的元素,该函数均返回true,则返回true,否则返回false
参数:一个返回值为布尔类型的函数
返回值:true或者false
对原数组的影响:无
3、some()接受一个返回值为布尔类型的函数,数组中只要有元素,该函数返回true,则返回true,否则返回false
参数:一个返回值为布尔类型的函数
返回值:true或者false
对原数组的影响:无
4、map()接受一个函数作为参数,返回一个新数组,新数组的元素是原数组元素使用该函数的结果
参数:一个函数
返回值:每个元素使用函数的结果值组成的数组
对原数组的影响:无
5、filter()接收一个返回值为布尔值的函数作为参数,对所有元素应该该函数,并返回返回值为true的元素组成的新数组
参数:一个函数
返回值:每个元素使用函数为true的元素组成的数组
对原数组的影响:无
--------------------------------------------------------------------------------
三、归并方法
1、reduce()接受一个函数作为参数,返回一个值。从一个累加值开始, 不断对累加值和数组中的后续元素调用该函数。
参数:一个函数
返回值:最后的累加值
对原数组的影响:无
2、reduceRight()方法
说明:和reduce一样,只是执行顺序是从右到左