数组
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