javascript之Array对象

数组对象是使用单独的变量来存储一系列值。

属性

  • length:返回数组中元素个数
  • prototype:构造函数的原型,允许向数组内添加属性和方法。

方法

  • isArray( ):判断参数是否为数组类型。参数必选,需要判断的值。
console.log(Array.isArray([1, 2, 3]));// true
console.log(Array.isArray({x: 1, y: 2}));// false
console.log(Array.isArray('[1, 2, 3]'));// false
console.log(Array.isArray(undefined));// false
  • concat( ):用于连接两个或多个数组,返回一个新数组。参数必选,一个或多个,可为具体的值或者数组。
var arr1 = [1, 2, 3];
var arr2 = [4, 5, 6];
var arr3 = [7, 8, 9];
console.log(arr1.concat(arr2, arr3, 100, 101));// [1, 2, 3, 4, 5, 6, 7, 8, 9, 100, 101]
  • fill( ):用一个固定值填充指定位置上的值。三个参数:第一个必选,用来填充数组的值;第二个可选,起始索引,默认为0;第三个可选,结束索引,默认为最后一位。
var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9,];
console.log(arr.fill(0));// [0, 0, 0, 0, 0, 0, 0, 0, 0]
console.log(arr.fill(0, 2));// [1, 2, 0, 0, 0, 0, 0, 0, 0]
console.log(arr.fill(0, 2, 5));// [1, 2, 0, 0, 0, 6, 7, 8, 9]
  • filter(callback):用于筛选满足条件的数组的值。参数必选,用于筛选
var arr = [1, 2, 3, 4, 5, 6, 7, 8];
var newArr = arr.filter(function(item) {
    return item > 5
})
console.log(newArr);// [6, 7, 8]
  • find( ):返回满足条件的第一个值,没有满足条件的值则返回undefined。参数必选,用于筛选。
var arr = [1, 2, 3, 4, 5, 6, 7, 8];
var newArr1 = arr.find(function(item) {
    return item > 5
})
var newArr2 = arr.find(function(item) {
    return item > 10
})
console.log(newArr1);// 6
console.log(newArr2);// undefined
  • findIndex( ):返回满足条件的第一个值的索引,没有满足条件的值则返回-1。参数必选,用于筛选。
var arr = [1, 2, 3, 4, 5, 6, 7, 8];
var newArr1 = arr.find(function(item) {
    return item > 5
})
var newArr2 = arr.findIndex(function(item) {
    return item > 10
})
console.log(newArr1);// 6
console.log(newArr2);// -1
  • forEach(callback):用于循环当前数组。callback接收三个参数,第一个为当前元素,第二个胃当前元素的索引值,第三个为当前数组。
var arr = [1, 2, 3, 4, 5, 6, 7, 8];
arr.forEach(function(item, index, array) {
    console.log(item)
    console.log(index)
    console.log(array)
})
  • includes( ):判断数组是否包含指定元素,包含返回true,不包含返回false。参数必选,代表指定元素。
var arr = [1, 2, 3, 4, 5, 6, 7, 8];
console.log(arr.includes(6));//true
console.log(arr.includes(10));//false
  • indexOf(index):返回指定元素的第一个索引值,没有返回-1。index指查找的起始位置。
var arr = [1, 2, 3, 1, 2, 3];
console.log(arr.indexOf(2));//1
console.log(arr.indexOf(4));//-1
  • join( ):将一个数组以指定字符连接起来,返回一个字符串。参数可选,连接数组的字符,默认为“,”。
var arr = [1, 2, 3, 4, 5, 6];
console.log(arr.join('-'));//1-2-3-4-5-6
console.log(arr.join());//1,2,3,4,5,6
  • lastIndexOf(index):返回指定元素的最后一个索引值,没有返回-1。逆向查找,index指查找的起始位置。
var arr = [1, 2, 3, 1, 2, 3];
console.log(arr.lastIndexOf(2));//4
console.log(arr.lastIndexOf(4));//-1
  • map(callback):创建一个新数组,数组中每个元素都执行一遍callback中的操作。callback参数与forEach中一致。
var arr = [1, 2, 3];
var newArr  = arr.map(function(item) {
    return item = item + 1;
})
console.log(newArr);[2, 3, 4]
  • pop( ):删除数组中最后一个元素,并返回其值。
var arr = [1, 2, 3];
console.log(arr.pop());//3
console.log(arr);//[1, 2]
  • push( ):向数组末尾添加元素,并返回数组的长度。
var arr = [1, 2, 3];
console.log(arr.push(5));//4
console.log(arr);//[1, 2, 3, 5]
  • reverse( ):将数组中的元素位置颠倒。
var arr = [1, 2, 3, 4, 5];
console.log(arr.reverse());//[5, 4, 3, 2, 1]
  • shift( ):删除数组中第一个元素,并返回其值。
var arr = [1, 2, 3, 4, 5];
console.log(arr.shift());//1
console.log(arr);//[2, 3, 4, 5]
  • slice( ):截取数组,返回新的数组。两个参数,第一个必选,截取的起始位置下标;第二个可选,截取的结束位置下标,默认为数组最后。
var arr = [1, 2, 3, 4, 5];
console.log(arr.slice(1));//[2, 3, 4, 5]
console.log(arr.slice(1, 3));//[2, 3]
  • sort( ):数组排序。参数可选,默认按照字符编码的顺序进行排序。如要按照数字大小进行拍讯,参数必须写成一个排序函数。
var arr = [4, 74, 3, 73, 5, 12, 9];
var newArr = arr.sort(function(x, y) {
    return x - y;
})
console.log(newArr);//[3, 4, 5, 9, 12, 73, 74]
  • splice( ):把数组中指定元素替换成另一个元素,返回替换的元素。三个参数:第一个参数,必选,需要替换元素的位置下标;第二个参数,必选,替换的个数;第三个元素,可选,要被替换成的元素,默认为‘’。
var arr = [1, 2, 3, 4, 5];
console.log(arr.splice(3, 1, 'a'));//[4]
console.log(arr);//[1, 2, 3, "a", 5]
console.log(arr.splice(2, 1));//[3]
console.log(arr);//[1, 2, "a", 5]
  • toString( ):将数组转为字符串,并返回结果。
var arr = [1, 2, 3, 4, 5];
console.log(arr.toString());//1,2,3,4,5
  • unshift( ):将一个或多个元素添加至数组开头,并返回数组长度。
var arr = [1, 2, 3, 4, 5];
console.log(arr.unshift('a', 'b'));//7
console.log(arr);//["a", "b", 1, 2, 3, 4, 5]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值