创建Array对象的语法:
new Array();
new Array(size);
//参数size是期望的数组个数,返回的数组,length被设为size的值。
new Array(element0,element1,...,elementn);
//参数element...,elementn是参数列表
Array对象属性
constructor:返回对创建此对象的数组函数的引用。
length:设置或返回数组中元素的数目。
prototype:可以使用其向对象添加属性和方法。
Array对象方法
- filter()方法-检测数组元素,并返回符合条件所有元素的数组。
语法:arrayObject.filter(function(currentVlaue,index,arr),thisValue)
function(currentValue,index,arr)参数,必须,函数,数组中的每个元素都会执行这个函数。
函数参数:currentValue参数,必须,当前元素的值。
index参数,可选,当前元素的索引值。
arr参数,可选,当前元素属于的数组对象。
thisValue参数,可选,对象作为该执行回调时使用,传递给函数,用作“this”的值,省略则“this”值为“undefined”
返回值:返回数组,包含了符合条件的所有元素。如果没有符合条件的元素则返回空数组。
- sort()方法-用于对数组的元素进行排序。
语法:arrayObject.sort(sortby);
sortby参数,可选,规定排序顺序,必须是函数。
返回值:对数组的引用,在原数组上进行排序。
说明:如果没有参数,将按字符编码顺序进行排序。
如果想按照其他标准进行排序,就需要提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具有两个参数 a 和 b,其返回值如下:
若 a 小于 b,在排序后的数组中 a 应该出现在 b 之前,则返回一个小于 0 的值。
若 a 等于 b,则返回 0。
若 a 大于 b,则返回一个大于 0 的值。
- forEach()方法-为数组中的每个元素执行指定的操作
语法:arrayObject.forEach(callback,thisArg)
callback参数,必需,函数,每个数组元素执行的函数。
函数参数:currentValue-正在处理的当前元素值。
index-正在处理的当前元素的索引
array-包含该元素的数组对象。
thisArg参数,可选, callback 函数中的 this 关键字可引用的对象。如果省略 thisArg,则 undefined 将用作 this 值。
- concat()方法-连接两个或更多的数组,并返回结果。
语法:arrayObject.concat(arrayX,arrayX,...,arrayX);
arrayX参数,必需,可以是具体的值,也可以是数组对象,可以是任意多个。
返回值:返回一个新的数组,该数组是把所有arrayX参数添加到arrayObject中生成的。如果参数是数组,那添加的是数组中的元素,而不是数组。
- join()方法-把数组的所有元素放入一个字符串,元素通过指定的分隔符进行分隔。
语法:arrayObject.join(separator);
separator参数,可选,指定要使用的分隔符,省略则使用逗号分隔。
返回值:返回一个字符串。把arrayObject的每个元素转换为字符串,然后连接起来,两元素之间插入separator字符串而生成的。
- pop()方法-删除并返回数组的最后一个元素。
语法:arrayObject.pop()
返回值:arrayObject的最后一个元素。
说明:pop()方法将删除arrayObject的最后一个元素,把数组长度减1,并返回它删除的元素的值。如果数组已经为空,则pop()不改变数组,并返回undefined值。
push()方法-可向数组的末尾添加一个或多个元素,并返回新的长度。
语法:
arrayObject.push(newelement1,newelement2,...newelementX);
newelement1,…,newelementX参数为要添加的元素,任意个数,但至少有一个。
返回值:把指定的值添加到数组后的新长度。reverse()方法-用于颠倒数组中元素的顺序。
语法:
arrayObject.reverse();
说明:该方法改变原来的数组,而不会创建新的数组。shift()方法-删除并返回数组的第一个元素
语法:arrayObject.shift()
返回值:数组原来的第一个元素的值。
说明:如果数组是空的,则shift()方法不进行任何操作,返回undefined值。
- slice()方法-从已有的数组中返回选定的元素。
语法:arrayObject.slice(start,end);
start参数,必需,规定从何处开始选取,如果是负数,那么从数组微博开始算起。
end参数,可选,规定该从何处结束选取。
返回值:返回一个新的数组,包含从start到end(不包含)的arrayObject中的元素。
- splice()方法-向/从数组中添加/删除项目,然后返回被删除的项目。
语法:arrayObject.splice(index,howmany,item1,...itemX);
index参数,必需,整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。
howmany参数,必需,要删除的项目数量,为0时,不会删除项目。
item1,…itemX参数,可选,向数组添加的新项目。
返回值:如果从arrayObject中删除了元素,则返回的是含有被删除的元素的数组。
toSource()方法-返回该对象的源代码。
语法:object.toSource();
toString()方法-把数组转换为字符串,并返回结果。
语法:arrayObject.toString();
toLocaleString()方法-把数组转换为本地字符串。
语法:arrayObject.toLocalString();
返回值:arrayObject的本地字符串表示。unshift()方法-向数组的开头添加一个或多个元素,并返回新的长度。
语法:arrayObject.unshift(newelement1,newelement2,...newelementX)
newelement1,…newelementX参数为想数组添加的元素,至少有一个。
返回值:arrayObject的新长度。valueOf()方法-返回Array对象的原始值。
语法:arrayObject.valueOf();