Home

Written by Mary Ma, and build some interesting tools .

JavaScript操作数组

2017-03-05

	一般用到的就是遍历数组取值完成数据渲染,突然发现不记得数组操作了~学!

1 数组的新建

var arrayObj = new Array(); //创建一个数组
var arrayObj = new Array([size]); //创建一个数组并指定长度,注意不是上限,是长度
var arrayObj = new Array([element0[, element1[, ...[, elementN]]]]); //创建一个数组并赋值

第二种方法虽然指定了数组的长度,但数组的长度是可变的,指定了数组长度为 5,当存储 6 个元素时,数组长度即为 6。

2 数组元素的访问

var testGetArrValue = arrayObj[i];  //获取元素的值
var arrObj[i] = "这是元素的值";    //给数组元素赋值
i是数组的第(i+1)个元素,因为数组的下标是从0开始的

3 数组元素的添加

arrObj.push(item);   //将元素添加到数组的尾部,返回新数组的长度
arrObj.unshift(item);   //将元素添加到数组的头部,其他元素后移,返回新数组的长度
arrObj.splice(index,howmany,item1,.....,itemX);  //index(必填)添加/删除元素的起始位置,howmany(必填)添加/删除元素的个数,item(选填)如果有则添加,没有就删除

4 数组元素的删除

arrObj.pop(); //移除最后一个元素,返回被除元素的值
arrObj.shift(); //移除第一个元素,返回移除元素的值,其他元素前移
arrObj.splice(deletePos, deleteCount); //deletePos移除位置,deleteCount移除的数量,返以数组的形式回移除的元素

5 数组的截取与合并

arrObj.slice(start, end); //以数组的形式返回从start到end的元素(不包括end),如果end不填则返回star后的所有元素
arrObj.concat(item); //arrObj与item合并为新的数组,item可以是元素、也可以是数组,返回合并后的新数组

6 数组的拷贝

arrayObj.slice(0); //返回数组的拷贝数组,注意是一个新的数组,不是指向
arrayObj.concat(); //返回数组的拷贝数组,注意是一个新的数组,不是指向

7 数组的排序

arrObj.reverse(); //数组反转,返回数组地址
arrObj.sort(); //数组元素排序,返回数组地址

8 数组元素字符串化

arrayObj.join(separator); //返回字符串,这个字符串将数组的每一个元素值连接在一起,中间用 separator 隔开。
toLocaleString 、toString 、valueOf:可以看作是join的特殊用法,不常用

9 数组的三个属性

  • length :数组元素的个数,数组的长度是可定义的,但它是可变的
  • prototype :返回对象类型原型的引用。prototype 属性是 object 共有的。 objectName.prototype objectName 参数是 object 对象的名称
  • constructor :表示创建对象的函数。
文章参考https://blog.csdn.net/xcxinghai/article/details/13502583

Home

Written by Mary Ma, and build some interesting tools .