小白JS学习笔记之数组(二)

数组

Array.isArray(value):判断是不是数组的方法

举例:

var List = ['aa','bb'];

console.log(Array.isArray(List))//true;

 数组转换成字符串

将数组转换成字符串的三大方法:toString(),toLocalString(),valueOf()

var color = ['red','blue','green'];

color.toString()//red,blue,green;

color.toLoaclString()//red,blue,green;

color.valueOf()//red,blue,green;

这三个方法默认返回以逗号为分隔符隔开每一项

改变分隔符同时将数组转换成字符串的方法join(),接受一个参数,参数为分隔符

var color = ['red','blue','green'];

var colors = color.join('||')

console.log(colors)//red || blue || green;

配合join()方法的有split()方法,接收一个参数,参数为分隔符的类型,将字符串转换成数组

console.log(colors.split('||'))// ['red','blue','green']

两个方法都不会改变原来的数组

数组的五个迭代方法

这个五个方法都接收两个参数:

第一个是每一项上运行的函数function,接收三个参数 1)数组项的值 2)该项在数组中的位置 3)数组对象本身

function(item,index,Array)


第二个参数(可选)运行该函数的作用域对象this

every():对数组的每一项运行给定函数,如果每一项都返回true,则返回true;

作用:判断数组内容是否符合条件

filter():对数组的每一项运行给定函数,返回true的项组成的数组;

作用:判断数组内容是否符合条件返回符合条件的内容

foreach():对数组的每一项运行给定函数,没有返回值;

即没有return值,但是可以执行其他操作,比如,可以对每个数组的值进行操作,在赋值到另外一个数组中(有点多余,map()方法就能实现)


map():对数组的每一项运行给定函数,返回每次函数调用的结果组成的数组;

作用:对数组进行操作,返回经过操作的数组

some():对数组的每一项运行给定函数,如果有一项返回true,则返回true;

作用:判断数组内容是否符合条件

ES5归并数组方法

两个归并方法

reduce()和reduceRight()

都会迭代数组的所有项,构建一个最终的返回值

reduce():从数组的第一项开始往后

reduceRight():从数组的最后一项开始往前


都会接收两个参数,第一个为调用的函数function(),接收四个值:前一个值,当前值,项的索引,数组对象,

这个函数的任何返回值会当作第一个参数自动传给下一项。

第二个参数(可选)为最为归并的初始值

举例:

var number =[1,2,3,4]

var sum  =number.reduce(function(pre,cur,index,number){

return pre + cur;

})//10

第一次执行pre=1,cur =2,   第二次执行,pre=3,cur=3

猜你喜欢

转载自blog.csdn.net/hamsterknight/article/details/80310145