array的方法
数组的方法
toString: 返回的结果为,数组转换为字符串的形似,逗号分隔。
push:增加在最后一项,返回的是数组的长度。
pop:删掉数组的最后一项,返回的是删除的项。
shift:删掉数组的第一项,返回的是删除的项。
unshift:增加数组的第一项,返回的是数组的长度。
reverse:返回将数组反着排序,同时数组也会反序。返回的值和原来的数组是同一个内存堆。
sort: 默认会将数组的每一项调用toString,然后进行比较。最后按照ascii从小到大的顺序排列。返回的值和原来的数组是同一个内存堆。也可以给这个函数调用的时候传入一个函数,这个函数接受两个参数,分别是前一个数组项和后一个数组项。如果前面的应该排在前面不变就返回一个负数。否则返回正数。相等的话返回0就行。
concat: 复制当前数组,返回其副本,传入这个方法的参数会增加到副本的最后。传入数组,就会将数组拆分。返回的是一个新的内存堆。
slice:将当前数组以传入的两个参数(都是数字,作为索引值)之间的项返回。第一个参数开始,最后一个参数结束(返回的数组不包括最后一个项)返回的是新的内存堆。
splice:可以接受很多个参数,第一个参数是操作从哪个位置开始(会包含这个索引的项),第二个参数是指需要删除的个数,之后参数是需要插入的内容。返回的值是删除的项的数组。
indexOf:接受两个参数,第一个是想要查找的项,第二个是开始查找的位置。如果找到项,将会返回项的索引值,否则返回-1。
lastIndexOf:和indexOf不同的是,这个方法是将数组从后往前查找。
数组的迭代方法。
每个方法接收两个参数,分别是要在每一项上运行的函数,和运行函数的作用域对象。每个函数可以接收三个参数,分别为在数组中的项,数组项的索引值,以及数组本身。
一、every:对数组的每一个项运行给定函数,如果全部都返回true,那这个方法返回的就是true。
二、some:对数组的每一项都运行给定函数,只要有一项返回true,那这个方法就返回true。
三、filter:对数组的每一项运行给定函数,返回运行结果为true的项组成的新数组。
四、forEach:对数组的每一项运行给定函数,没有返回值。
五、map:对数组的每一项运行给定函数,返回每次函数调用结果组成的数组。
reduce: 这个方法接收两个参数,分别为在每一项上调用的函数,作为归并的基础的值。函数接收四个值,分别为前一个函数的返回值,当前项,项的索引,数组对象。
reduceRight: 和reduce不一样的是,这个方法是将数组从后往前运行。