js数组

js数组

数组是有序的数据集合。
数组属于对象类型。
数组的作用:用于在单个变量中存储多个值。

数组的基本方法

push() 在数组的后面添加(单个或多个)新元素,返回数组新的长度


let arr = [1,2,3,4]
var a = arr.push(5)
console.log(arr);  //[ 1, 2, 3, 4, 5 ]
console.log(a); //5

pop() 删除数组的最后一个元素,返回被删除的元素


let arr = [1,2,3,4]
var a = arr.pop(5)
console.log(arr);  //[ 1, 2, 3 ]
console.log(a); //4

unshift() 在数组的前面添加(单个或多个)新元素,返回数组新的长度


let arr = [1,2,3]
var a = arr.unshift(4,5)
console.log(arr);  //[ 4, 5, 1, 2, 3 ]
console.log(a);   //5

shift() 删除数组的第一个元素,返回被删除的元素


let arr = [1,2,3]
var a = arr.shift(4,5)
console.log(arr);  //[ 2, 3 ]
console.log(a);   //1


splice() 可以对数组进行增、删、改,返回一个数组(被删除的元素)
删除n项:arr.splice(起始位置,n)
增加元素:arr.splice(起始位置,0,添加1,添加2…)
修改元素:arr.splice(起始位置,2,替换1,替换2)


//删除
let arr = [1,2,3,4]
var arr2 = arr.splice(2,2)
console.log(arr);  //[ 1, 2 ]
console.log(arr2);   //[ 3, 4 ]
// 增加
let arr3 = [111,222,333]
var arr4 = arr3.splice(3,0,444,555)
console.log(arr3);  //[ 111, 222, 333, 444, 555 ]
console.log(arr4);  //[]
//修改
let arr5 = [111,222,333]
var arr6 = arr5.splice(0,3,444,555,666)
console.log(arr5);  //[ 444, 555, 666 ]
console.log(arr6);  //[ 111, 222, 333 ]


reverse() 将数组进行倒转,返回数组
arr.reverse();


let arr = [1,2,3,4,5]
let arr2 = arr.reverse()
console.log(arr); //[ 5, 4, 3, 2, 1 ]
console.log(arr2); //[ 5, 4, 3, 2, 1 ]


sort() 将数组进行排序,返回数组
arr.sort(); //默认按照字符编码排序


let arr = [51,64,55,79,31]
var arr2 = arr.sort()
console.log(arr); //[ 31, 51, 55, 64, 79 ]
console.log(arr2);  //[ 31, 51, 55, 64, 79 ]

【注】以上方法都会改变原数组

slice() 从数组中拷贝一部分,返回新数组

arr.slice(1,4) 包含索引为1的元素,不包含索引为4的元素(拷贝索引为 1 2 3 的元素)


let arr = [1,2,3,4,5,6]
let arr2 = arr.slice(4)
console.log(arr2); //[ 5, 6 ]

concat() 用于合并数组,返回新数组
arr.concat(arr1,arr2…)


let arr = [1,2,3]
let arr2 = [4,5,6]
var arr3 = arr.concat(arr2)
console.log(arr3); //[ 1, 2, 3, 4, 5, 6 ]


toString() 将数组转成字符串,返回字符串


let arr = ['h','e','l','l','o']
let arr2 = arr.toString() 
console.log(arr2);//h,e,l,l,o


join() 将数组转成字符串,参数为分隔符,返回字符串


let arr = ['h','e','l','l','o']
let arr2 = arr.join('')
console.log(arr2); //hello

[注]以上方法都不会改变原数组

includes()

数组的 includes() 方法用来判断一个数组是否包含一个指定的值,返回布尔值


let arr = [1,2,3,4,5]
console.log(arr.includes(1)); //true
console.log(arr.includes(6)); //false


数组遍历:

1,普通for循环,经常用的数组遍历


var arr = [1,2,3,4,5];
 for ( var i = 0; i <arr.length; i++){
    console.log(arr[i]);//1  2  3  4  5
}


2,forEach


var arr = [1,2,3,4,5];
arr.forEach(function (value, i) {
    console.log(i + '--' + value); //0--1  1--2  2--3  3--4  4--5
})

3、map遍历,map即是 “映射”的意思 用法与 forEach 相似。不同点是map支持return返回值


var arr = [1,2,3,4,5];
arr.map(function (value, i) {
    console.log(i + '--' + value); //0--1  1--2  2--3  3--4  4--5
})


for-of遍历


var arr = [1,2,3,4,5];
for( let i of arr){
    console.log(i);  //1 2 3 4 5
}

filter 过滤

筛选出符合要求的数组元素,返回新数组

    let arr = [1,2,8,10,6,89,9,12]
    let arr2 = arr.filter((item,index,arr)=>{
        return item>10
    })
    console.log(arr2);  //[89,12]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值