本文主要和大家分享JS中的内置对象Array详解,JS的内置对象主要分为四大类:Array String Math Date,我们主要介绍Array,希望能帮助到大家。
数组内的每一项都可以保存任意类型的数据,数组的大小可根据需要进行调整。
1. 创建
a. 使用构造函数:
var colors= new Array( ) 括号内可以时数组的数据个数,也可以是每一项具体的数据,但要注意的是,每一项数据之 间用逗号隔开。
b. 数组字面量表示法
var colors=[1,2,3] 每项数据之间用逗号隔开。
2. 元素的访问与设置
[ ]进行访问,从0开始。超出数组的长度,返回值为undefined。
3. 长度
array.length,返回值为number.
可以设置数组长度以此能在数组的末尾添加或者删除新的数据项。
把一个放在超出当前数组大小的位置时,系统会自动重新计算数组的长度,长度值为最后一项索引加一。
4. 遍历
for(var i=0;i<array.length;i++) { console.log(array[i]); }
5. 数组中一些常用的方法
a. push( ) arrayObject.push( value1,value2...)
将括号内的value值依次顺序的添加到arrayObject尾部
返回数组的新长度
b. unshift( ) arrayObject.unshift(value1,value2...)
将括号内的value值依次顺序的添加到arrayObject头部
返回数组的新长度
c. pop( ) arrayObject.pop( ) 删除最后一个元素,返回删除的元素
d. shift( ) arrayObject.shift( ) 删除第一个元素,返回删除的元素
e. join( ) arrayObject.join( 分隔符)
将数组中的元素放入一个字符串,返回一个字符串;分隔符默认逗号,不写默认空格。
f. sort( ) arrayObject.sort( )
对数组元素进行排序,返回值为数组
即使数组中的每一项都是数字,该方法比较的还是字符串,按照字符串的顺序进行排序
可以接收一个比较函数作为参数
array.sort( function ( x, y ) {
return x-y; // 顺序输出
return y-x; // 降序输出
})
g. reverse( ) arrayObject.reverse( ) 将数组中的元素颠倒然后输出,返回数组
h. concat( ) arrayObject.concat(数组1,数组2...... ) 连接两个或者多个数组,返回数组
arr3=arr1.concat(arr2) 1连接2然后放到3里面
i. slice( ) arrayObject.slice( start ,end ) 返回数组选定的元素 返回值为数组
start:必需,从哪开始,可以是负数,负数+数组的长度就是start
end:可选,截止位置,不写默认到最后一个字符
截取的元素从start开始,到end-1结束
[例题]:var a=[1,'yes',3] b; 请做b对a的复制,方法越多越好
方法一:数组遍历
b=new Array(); for( var i=0;i<a.length;i++) { b.push(a[i]); }
方法二: 使用concat( )
b=[].concat(a);
方法三:使用slice( )
b=a.slice(0);
j. splice( )
<1> 删除 arrayObject.splice( index,count)
删除从index处开始的count个元素,返回被删除元素的数组,count为0时,不做任何操做,count不设置值时,从index后的所有元素都将被删除。
<2> 插入 arrayObject.splice( index,0,value1,value2......)
从index位置插入value的值,返回数组。在索引的后一位插入数据
<3> 替换 arrayObject.splice( index,count,value1,value2......)
返回值:从原始数组中删除的数据,没删除返回空数组, count为要删除的项数
k. indexOf( ) arrayObject.indexOf( searchvalue, startIndex)
searchvalue:必需,所要查找的数据
startIndex: 可选,起点的位置,默认为0
返回值:number, 返回查找的项在数组中的位置,未找到返回-1
l. lastIndexOf( ) 和上一个类似,从数组的最后一个元素开始查找。
相关推荐:
以上是JS中的内置对象Array详解的详细内容。更多信息请关注PHP中文网其他相关文章!