js之数组相关的方法

数组,是对象,关注索引,效率比 {}形式的对象高

var arr = [1,2,3];
arr[arr.length] = 4;  //向数组末尾加上一个元素
console.log(arr);   //1,2,3,4
 var arr = [1, 2, 3];
        arr[arr.length] = 4;      //数组末尾加一个元素4
        console.log(arr);         //[1,2,3,4]
        // 添加两个元素
        console.log(arr.push(11,22)); //返回值,数组长度为6
        console.log(arr);         //[1,2,3,4,11,22]
        console.log(arr.pop());   // 22
        console.log(arr);         //[1,2,3,4,11]

数组方法:
arr.push(); 该方法向数组末尾添加一个或多个元素,返回新的数组长度
arr.pop(); 该方法从数组末尾删除一个元素,返回删除的元素
arr.unshift();该方法向数组头部添加一个或多个元素,返回新的数组长度
arr.shift();该方法从数组头部删除一个元素,返回删除的元素

for循环遍历数组

for(var i = 0;i<arr.length;i++){
	console.log(arr[i])
}

由我们创建,但不由我们调用的函数叫回调函数 forEach(function(){})
filter,map,reduce

**forEach()方法(ie8以下不支持)**
arr.forEach(function(val,index,arr){
	console.log(val,index,arr)
})
**三个参数,值,索引,对象**
//取出数组中小于100的元素,扩大2倍(乘以2),求出它们的和
let arr = [10,40,50,102,200,60];
let totel = arr.filter(function(value){
	return value <100;
}).map(function(value){
	return value * 2
}).reduce(function(pre,cur){
	return pre + cur
},0)
**slice()方法截取数组中元素,不改变原数组,返回截取的数组**
arr.slice(start,end);
**包含start(索引)不包含end**
**没有end,默认截取到最后**
**end为负,则从后往前,-1最后一个的索引,(1,-1)截取1到最后一个之间的元素**
**splice()方法删除/替换/添加数组中元素,会改变原数组,返回删除的数组**
arr.splice(参数1,参数2,参数3);
参数一:从第几个元素开始
参数二:删除几个元素
参数三:在参数一的后面位置插入元素

Set()数组去重 Array.from(new Set(arr))
arr1.concat(arr2,888),把数组arr1和arr2,888 合并,返回新数组,不改变原数组
arr.join(); 数组转字符串,不改变原数组
arr.reserve(); 翻转数组,改变原数组
arr.sort();对数组排序,按Unicode编码排序,数字排序也可能混乱,比如11和2,会改变原数组

**如下可以升序排序**
var arr = [3,2,6,8,0,2,1];
arr.sort(function(a,b){
	return a-b;   //升序排序
	//return b-a;   //降序排序
})
console.log(arr)
**判断是否为数组四种方法**
let a = [1,2,3]
console.log(Array.isArray(a));
console.log(a instanceof Array);   //true  或  false
console.log(a.constructor === Array); //true
console.log(Object.prototype.toString.call(a) === '[object Array]');//true
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值