• 【JavaScript】参考手册-Array对象的3个属性和25个方法


    1、概念

    Array 对象用于在变量中存储多个值:

    var animals = ["cat", "dog", "pig"];
    
    • 1

    第一个数组元素的索引值为 0,第二个索引值为 1,以此类推。

    2、数组属性

    2.1 constructor 返回创建数组对象的原型函数

    var animals = ["cat", "dog", "pig"];
    console.log(animals.constructor); // [Function: Array]
    console.log(animals.constructor()); // []
    
    • 1
    • 2
    • 3

    2.2 length 设置或返回数组元素的个数

    var animals = ["cat", "dog", "pig"];
    console.log(animals.length); // 3
    animals.length = 6
    console.log(animals.length); // 6
    
    • 1
    • 2
    • 3
    • 4

    2.2 prototype 允许你向数组对象添加属性或方法

    Array.prototype.myUcase = function () {
      for (i = 0; i < this.length; i++) {
        this[i] = this[i].toUpperCase()
      }
      return this
    }
    var animals = ['cat', 'dog', 'pig']
    console.log(animals.myUcase()) // [ 'CAT', 'DOG', 'PIG' ]
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    3、Array 对象方法

    3.1 concat() 连接两个或更多的数组并返回结果

    var animals = ['cat', 'dog', 'pig']
    var animalNew = ['lion']
    console.log(animals.concat(animalNew)) // [ 'cat', 'dog', 'pig', 'lion' ]
    
    • 1
    • 2
    • 3

    3.2 copyWithin() 从数组的指定位置拷贝元素到数组的另一个指定位置中(原数组被修改)

    var animals = ['cat', 'dog', 'pig']
    console.log(animals.copyWithin(1, 0)) // [ 'cat', 'cat', 'dog' ]
    console.log(animals) // [ 'cat', 'cat', 'dog' ]
    
    • 1
    • 2
    • 3

    3.3 entries() 返回数组的可迭代对象

    var animals = ['cat', 'dog', 'pig']
    console.log(animals.entries()) // Object [Array Iterator] {}
    
    for (entry of animals.entries()) {
      console.log(entry)
    }
    // [ 0, 'cat' ]
    // [ 1, 'dog' ]
    // [ 2, 'pig' ]
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    3.4 every() 检测数组元素的每个元素是否都符合条件

    var ages = [16, 24, 33];
    console.log(ages.every(age => age > 20)) // false
    console.log(ages.every(age => age > 12)) // true
    
    • 1
    • 2
    • 3

    3.5 fill() 使用一个固定值来填充数组(原数组被修改)

    var animals = ['cat', 'dog', 'pig']
    console.log(animals.fill('lion')) // [ 'lion', 'lion', 'lion' ]
    console.log(animals) // [ 'lion', 'lion', 'lion' ]
    
    • 1
    • 2
    • 3

    3.6 filter() 检测数组元素并返回符合条件所有元素的数组

    var ages = [16, 24, 33];
    console.log(ages.filter(age => age > 20)) // [ 24, 33 ]
    console.log(ages.filter(age => age > 12)) // [ 16, 24, 33 ]
    
    • 1
    • 2
    • 3

    3.7 find() 返回符合传入测试(函数)条件的数组元素

    var ages = [16, 24, 33];
    console.log(ages.find(age => age > 20)) // 24
    console.log(ages.find(age => age > 12)) // 16
    
    • 1
    • 2
    • 3

    3.8 findIndex() 返回符合传入测试(函数)条件的数组元素索引

    var ages = [16, 24, 33];
    console.log(ages.findIndex(age => age > 20)) // 1
    console.log(ages.findIndex(age => age > 12)) // 0
    
    • 1
    • 2
    • 3

    3.9 forEach() 数组每个元素都执行一次回调函数

    var animals = ['cat', 'dog', 'pig']
    animals.forEach((item, index, obj) => { console.log(item, index, obj) })
    // cat 0 [ 'cat', 'dog', 'pig' ]
    // dog 1 [ 'cat', 'dog', 'pig' ]
    // pig 2 [ 'cat', 'dog', 'pig' ]
    animals.forEach(item => { console.log(item) })
    // cat
    // dog
    // pig
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    3.10 from() 通过给定的对象中创建一个数组

    var animals = Array.from("lion");
    console.log(animals) // [ 'l', 'i', 'o', 'n' ]
    var animals = Array.from(['cat', 'dog', 'pig']);
    console.log(animals) // [ 'cat', 'dog', 'pig' ]
    
    • 1
    • 2
    • 3
    • 4

    3.11 indexOf() 搜索数组中的元素并返回它所在的位置

    var animals = ['cat', 'dog', 'pig']
    console.log(animals.indexOf('dog')) // 1
    
    • 1
    • 2

    3.12 join() 把数组的所有元素放入一个字符串

    var animals = ['cat', 'dog', 'pig']
    console.log(animals.join()) // cat,dog,pig
    console.log(animals.join('-')) // cat-dog-pig
    console.log(animals.join(['1', '2'])) // cat1,2dog1,2pig
    
    • 1
    • 2
    • 3
    • 4

    3.13 lastIndexOf() 返回一个指定的字符串值最后出现的位置在一个字符串中的指定位置从后向前搜索

    var animals = ['pig', 'cat', 'dog', 'pig']
    console.log(animals.lastIndexOf('cat')) // 1
    console.log(animals.lastIndexOf('dog')) // 2
    console.log(animals.lastIndexOf('pig')) // 3
    
    • 1
    • 2
    • 3
    • 4

    3.14 map() 通过指定函数处理数组的每个元素并返回处理后的数组

    var animals = ['cat', 'dog', 'pig']
    console.log(animals.map(item => item+'%')) // [ 'cat%', 'dog%', 'pig%' ]
    console.log(animals) // [ 'cat', 'dog', 'pig' ]
    
    • 1
    • 2
    • 3

    3.15 pop() 删除数组的最后一个元素并返回删除的元素(原数组被修改)

    var animals = ['cat', 'dog', 'pig']
    console.log(animals.pop()) // pig
    console.log(animals) // [ 'cat', 'dog' ]
    
    • 1
    • 2
    • 3

    3.16 push() 向数组的末尾添加一个或更多元素并返回新的长度(原数组被修改)

    var animals = ['cat', 'dog', 'pig']
    console.log(animals.push('lion')) // 4
    console.log(animals) // [ 'cat', 'dog', 'pig', 'lion' ]
    
    • 1
    • 2
    • 3

    3.17 reverse() 反转数组的元素顺序(原数组被修改)

    var animals = ['cat', 'dog', 'pig']
    console.log(animals.reverse()) // [ 'pig', 'dog', 'cat' ]
    console.log(animals) // [ 'pig', 'dog', 'cat' ]
    
    • 1
    • 2
    • 3

    3.18 shift() 删除数组的第一个元素(原数组被修改)

    var animals = ['cat', 'dog', 'pig']
    console.log(animals.shift()) // cat
    console.log(animals) // [ 'dog', 'pig' ]
    
    • 1
    • 2
    • 3

    3.19 slice() 选取数组的的一部分并返回一个新数组

    var animals = ['cat', 'dog', 'pig']
    console.log(animals.slice(2)) // [ 'pig' ]
    console.log(animals) // [ 'cat', 'dog', 'pig' ]
    
    • 1
    • 2
    • 3

    3.20 some() 检测数组元素中是否有元素符合指定条件

    var ages = [16, 24, 33];
    console.log(ages.some(age => age > 20)) // true
    console.log(ages.some(age => age > 40)) // false
    
    • 1
    • 2
    • 3

    3.21 sort() 对数组的元素进行排序(原数组被修改)

    var ages = [33, 16, 24];
    console.log(ages.sort()) // [ 16, 24, 33 ]
    console.log(ages) // [ 16, 24, 33 ]
    
    • 1
    • 2
    • 3

    3.22 splice() 从数组中添加或删除元素(原数组被修改)

    var ages = [33, 16, 24];
    console.log(ages.splice(0, 2)) // [ 33, 16 ]
    console.log(ages) // [ 24 ]
    
    • 1
    • 2
    • 3

    3.23 toString() 把数组转换为字符串并返回结果

    var animals = ['cat', 'dog', 'pig']
    console.log(animals.toString()) // cat,dog,pig
    console.log(animals) // [ 'cat', 'dog', 'pig' ]
    
    • 1
    • 2
    • 3

    3.24 unshift() 向数组的开头添加一个或更多元素并返回新的长度(原数组被修改)

    var animals = ['cat', 'dog', 'pig']
    console.log(animals.unshift('lion')) // 4
    console.log(animals) // [ 'lion', 'cat', 'dog', 'pig' ]
    console.log(animals.unshift(['deer', 'horse'])) // 5
    console.log(animals) // [ [ 'deer', 'horse' ], 'lion', 'cat', 'dog', 'pig' ]
    
    • 1
    • 2
    • 3
    • 4
    • 5

    3.25 valueOf() 返回数组对象的原始值

    animals.valueOf()与 animals返回值一样

    var animals = ['cat', 'dog', 'pig']
    console.log(animals.valueOf()) // [ 'cat', 'dog', 'pig' ]
    console.log(animals) // [ 'cat', 'dog', 'pig' ]
    
    • 1
    • 2
    • 3
  • 相关阅读:
    phpstorm配置php运行环境
    一文概览NLP句法分析:从理论到PyTorch实战解读
    基于原子轨道搜索算法优化概率神经网络PNN的分类预测 - 附代码
    ipad可能会在iOS 16中失去智能家居中心功能
    【Mysql】Mysql查询
    淘宝商品详情API接口(H5端和APP端),淘宝详情页,商品属性接口,商品信息查询
    MySQL浅析之架构概览
    无涯教程-JavaScript - AND函数
    优思学院|六西格玛在摩托罗拉的故事回顾-2022
    Softing TCS:高效的诊断模拟解决方案
  • 原文地址:https://blog.csdn.net/shentian885/article/details/126356763