array数组操作方法

数组常用方法简要

数组操作方法笔者分为两种,一是对原数组产生影响的,另一种是对原数组没有影响

有影响,直接修改原数组的方法:

  1. push()向数组末尾添加元素,并返回数组的新的长度,该方法会将新数组的长度作为返回值返回
    var arr = ["孙悟空","猪八戒","沙和尚"];
    var result = arr.push("唐僧","蜘蛛精","白骨精","玉兔精");
    console.log(arr);
    console.log("result = "+result);

  2. pop()从数组末尾删除最后一个元素,并将删除的元素作为返回值返回

    result = arr.pop();
    console.log(arr);
    console.log("result = "+result);

  3. unshift()向数组的开头添加元素,并返回新的数组长度

    var result = arr.unshift("牛魔王","二郎神");
    console.log(arr);
    console.log(result);

  4. shift()删除数组的第一个元素,将删除值返回

    result = arr.shift();
    console.log(arr);
    console.log("result = "+result);

  5. splice()删除数组中的元素,影响原数组  - 参数:

arr = ["孙悟空","猪八戒","沙和尚","唐僧","白骨精"];
var result = arr.splice(3,0,"牛魔王","铁扇公主","红孩儿");
console.log(arr);
console.log(result);

splice(0,2,‘红孩儿’)表示将数组从索引0开始,向后删除2个元素,第三个参数表示可添加的元素(该方法常用

6.reverse()反转数组(直接修改原数组)

arr = ["孙悟空","猪八戒","沙和尚","唐僧"];
arr.reverse();
console.log(arr);

 

原数组没有影响:

1slice()从数组中提取已有的元素

slice()

             *  - 可以用来从数组提取指定元素

             *  - 该方法不会改变元素数组,而是将截取到的元素封装到一个新数组中返回 

参数:

             *      1.截取开始的位置的索引,包含开始索引

             *      2.截取结束的位置的索引,不包含结束索引

第二个参数可以省略不写,此时会截取从开始索引往后的所有元素

索引可以传递一个负值,如果传递一个负值,则从后往前计算

             *  -1 倒数第一个

             *   -2 倒数第二个

2.join()将数组转换为字符串

3.sort()对数组进行排序(按照Unicode编码排序

我们可以在sort()添加一个回调函数,来指定排序规则,

             *      回调函数中需要定义两个形参,

             *      浏览器将会分别使用数组中的元素作为实参去调用回调函数

             *      使用哪个元素调用不确定,但是肯定的是在数组中a一定在b前边

 浏览器会根据回调函数的返回值来决定元素的顺序,

             *      如果返回一个大于0的值,则元素会交换位置

             *      如果返回一个小于0的值,则元素位置不变

             *      如果返回一个0,则认为两个元素相等,也不交换位置

arr = [5,4,2,1,3,6,8,7];
arr.sort(function(a,b){
//前边的大
/*if(a > b){
	    return -1;
    }else if(a < b){
		return 1;
	}else{
		return 0;
	}*/
				
	//升序排列
	//return a - b;			
	//降序排列
	// return b - a;
});
console.log(arr);

 

 

 

 

 

 

 


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值