数组中常用api 1

Array.push()

依次将内容添加到数组的尾部,并返回新长度 直接在源数组上进行修改

var arr = [5, 8, true];
var alength = arr.push('zhangsan', 123, 'lisi'); 
console.log(arr);   // [5, 8, true,"zhangsan", 123, "lisi"]				
console.log(alength);   //返回新长度,6

2. Array.pop()

无参数,删除并返回数组的最后一个元素,将数组的长度-1 。若数组为空,则直接返回undefined

var arr = [5, 8, 9];
var val = arr.pop();   

console.log(arr);  //[5, 8]					
console.log(val);   // 9

3. Array.unshift()

将元素依次插入到数组的头部,返回数组的新长度,直接修改源数组

var arr = [5, 8, true];
arr.unshift('ok', 'ojbk');

console.log(arr.unshift());   // 新数组长度 5
console.log(arr);   //['ok','ojbk',5, 8, true];

4. Array.shift()

删除,并返回数组的第一元素,将余下元素的索引前移一位,直接操作源数组

var arr = [5, 8, true];
console.log(arr.shift());  //5
console.log(arr);        //[8, true];

5. Array.sort()

排序字符串或者数字:按照字符编码,修改原数组

5.1 排序字符串
 先排第一位:比如abc,则是a先排;之后依次比较其他位

var arr = ['aaa', 'abc', 'abb', 'cba', 'aaa']; 
console.log(arr.sort());    //[aaa aaa abb abc cba]
console.log(arr);          //修改原数组:[aaa aaa abb abc cba]

排的顺序如下:
 //aaa abc abb aaa cba  排第一位
 //aaa aaa abc abb cba   排第二位
 //aaa aaa abb abc cba   排第三位

5.2 排序数字

 利用sort方法是如下效果,不符合正常的排序逻辑

var arr2 = [123, 111, 1, 12, 181];
console.log(arr2.sort());     // 1 111 12 123 181

排的顺序如下:
//111 1 12 123 181
// 1 111 12 123 181

实现数字从大到小或者从小到大排序的方法:

  a. 用回调函数方法1

	var arr = [123, 111, 1, 12, 181];
	
	function compare(a, b) {
		return a - b; //升序排列
		//return b - a; //降序排列
	}
	
	arr.sort(compare);
	console.log(arr);   // 1 12 111 123 181

  b. 用回调形式方法2
  把一个函数作为参数传入,另一个函数的方法就是回调函数

	var arr = [123, 111, 1, 12, 181];
	//把一个函数作为参数传入另一个函数的方法就是回调函数
	console.log(arr.sort(function(a, b) {
		return a - b;
	}));             // 1 12 111 123 181

6. Array.reverse()

颠倒数组中的所有元素顺序,直接操作源数组

var arr = [5, 8, true];

console.log(arr.reverse());  //[true, 8, 5]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值