javascript的Array对象

Array对象是javascript中唯一的容器。

现在我们来了解一下Array的方法:

    1)、concat()方法:连接两个或两个以上的数组,并返回结果(这个是非原地修改)

 var str1="hello";
     var str2="world";
     str=str1.concat(str2);
     println(str);//helloworld

    2)、join()方法:把数组的所元素都放在一个字符串中,元素通过制定的分隔符分割。

var arr=[12,3,34,23,21,34,21];
   			println(arr.join(","));
   			/*可以直接用println(arr.join())的原因是join的默认值就是用逗号做分隔符,也可以自己给定字符
   				也可以用println(arr);
   						
   			*/

    3)、pop()方法:删除并返回数组的最后一个元素。

                var arr=[12,3,34,23,21,34,21];
                var lastE=arr.pop();
		println(lastE+":"+arr);//21:12,3,34,23,21,34

    4)、push()方法:向数组的末尾添加一个或者多个元素,并返回新数组的长度。

                var arr=[12,3,34,23,21,34,21];
                var length=arr.push("a","b","c");
		println(length);//9

注意:用第三种pop()(进栈)方法和第四种push()(出栈)方法可以用来写栈。

    5)、shife()是删除并返回数组的第一个元素。

arr=[12,3,34,23,21,34,21];
		var fristE=arr.shift();
		println("fristE:"+fristE+":"+arr);//12:3,34,23,21,34,21
    6)、unshift()是向数组的头部添加一个或者多个元素,并返回新数组的长度。
length=arr.unshift("a","b","c");
		println(length);//12

注意:用方法shift()和push()可以实现队列的操作

因为shift(出队列)和unshife(进队列)和我们平时语义不协调所以可以在Tool.js中为他们两个取别名再调用。

Array.prototype.removeFirst=function(){
	return this.shift();
	
}
Array.prototype.addFirst=function(){
	return this.unshift();
	
}

    7)、reverse()方法:点到数组中的元素-----原地修改

arr=[1,2,3,4,5,6];//6,5,4,3,2,1
		println(arr.reverse());

    8)、slice()方法:slice(start,end);截取从start开始包含start到end的字符串。[start,end)。

            如果start或者end是负数那就从数组的末尾以0开始计数。[倒数start,倒数end)

arr=[1,2,3,4,5,6];
		println(arr.slice(2, 4));//34
		println(arr.slice(-4, -2));//34

    9)、sort()方法:数组排序

arr=["a","c","f","g","h","w"];
		arr.sort();//它是默认的字符串比较方式。
		//如果是数字比较或者是数字和字符串的比较需要自己自定义。
		println(arr);

    10)、splice()函数:在数组中选择要删除的部分(给定开始位置和删除元素的个数),有需要的话再到删除的位置上面加要添加的数据。

arr=["a","c","f","g","h","w"];
		var temp = arr.splice(1, 3, "france",2,1,"australia");
		//有三部分:开始的位置,删除的个数,要添加的数据。
		println(temp);//c,f,g
		println(arr);//a,france,2,1,australia,h,w
		
    11)、toSource()方法:返回对象的源代码。



细节:concat()和push()的区别。

contcat最重要的就是现场保护(非原地修改),它是把arr2和arr3中的元素一个个的取出来然后加在arr1上的,属于以为数组。

push是原地修改的,它是将arr2和arr3作为一个整体加到arr中的,相当于某个元素变成了数组(即一个复杂的元素),成了二维空间。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值