var arr = new Array(20) // 创建了一个包含20项的数组
var arr = new Array(‘a‘, ‘b‘, ‘c‘) // 创建了包含字符串 a b c 的三项数组
var arr = Array(20)
var arr = Array(‘a‘, ‘b‘, ‘c‘)
var arr = []
var arr = [‘a‘, ‘b‘, ‘c‘]
用于创建数组,用法和 new Array() 一样。弥补 Array() 构造函数的不足(即参数不同,行为不同),Array.of() 的行为始终一致,将传入的值作为数组的项,产生数组
{Object} obj
要转为数组的对象{Function} func
一个函数,功能类似于数组的map方法,对每一个对象属性执行该函数,并返回由该函数的返回值组成的数组{Object} context
第二个函数参数的执行环境(this指向)if(value instanceof Array){
// 对数组执行某些操作
}
if(Array.isArray(value)){
// 对数组执行某些操作
}
if(Object.prototype.toString.call(obj) === ‘[object Array]‘){
// 对数组执行某些操作
}
{Number}
数组长度{Number}
数组长度1、如果第一个参数 应该位于 第二个参数 之前 返回一个负数
2、如果第一个参数 应该位于 第二个参数 之后 返回一个正数
3、并列返回0
####操作方法
1、只传起始位置(即一个参数)
返回:从起始位置到数组末尾的项组成的数组
2、传递两个参数
返回:从起始位置到结束位置(不包含结束位置)的项组成的数组
3、传递负数
返回:会用数组长度加上该负数来确定相应的位置,并按照1、2的规则返回新数组
4、起始位置大于结束位置
返回:空数组
第一个参数:要删除的第一项的位置
第二个参数:要删除的项数
第三个参数(第四个、第五个......):插入的项
第一个参数:要拷贝的目标位置(target)
第二个参数:从该位置读取数据,默认是0,负值表示倒数
第三个参数:读取到该位置结束,默认是 数组的长度,不包含该位置,负值表示倒数
第一个参数:填充的值
第二个参数:填充的起始位置
第三个参数:填充的结束位置(不包含该位置)
第一个参数:要查找的项
第二个参数:查找起点位置索引
注意:在查找过程中使用全等操作符(===)
undefined
第一个参数:要查找的值
第二个参数:查找的起始位置,默认是0,负数表示倒数,查出范围会重置为0
true
包含, false
不包含includes 相比于 indexOf 的优势有两点:1、更加语义化,不需要判断返回值是否为 -1。2、由于 indexOf 底层在判断是否相等时使用的是全等操作符 ===,这会导致使用 indexOf 查找 NaN 时查不到,而 includes 则不存在这样的问题
描述:迭代数组,对数组的每一项执行给定函数
参数:第一个参数:函数
函数接收三个参数
1、数组的项
2、该项在数组中的位置
3、数组对象本身
第二个参数:第一个参数的执行环境(this指向)
返回值:
forEach() 无返回值
every() 对数组运行给定函数,如果该函数对每一项都返回true,则返回true
some() 对数组运行给定函数,如果该函数对任意一项返回true,则返回true
filter() 对数组执行给定函数,返回该函数返回true的项组成的数组
map() 对数组执行给定函数,返回每次函数调用结果组成的数组
entries()
,keys()
和 values()
都用于遍历数组。它们都返回一个遍历器对象(详见《Iterator》一章),可以用 for...of
循环进行遍历,唯一的区别是 keys()
是对键名的遍历、values()
是对键值的遍历,entries()
是对键值对的遍历。第一个参数:函数,函数接收的参数:
1、前一项(pre)
2、当前项(cur)
3、当前项的索引(index)
4、数组对象本身(array)
第二个参数:归并的初始值
注意:第一次迭代的时候,pre是数组的第一项,cur是数组的第二项,reduce() 和 reduceRight() 除了迭代方向不一致外,其他完全相同
原文:http://www.cnblogs.com/fanshaokun/p/6898592.html