• 历史随笔: Array 的一些基础属性方法


    数组对象: Array

    1. 前言

    数组也好, 列表也好, 在不同的编程语言里面叫法虽然不一样, 但其本质是一样的, 作为最常用的对象, 其属性和方法是必须要牢记在心的, 以下是Array对象的完整属性方法示例.

    2. 参数

    情况1: 没参数

    var arr = new Array(); // 实例化时括号中不加参数, 返回一个空数组
    console.log(arr); // 输出: []
    

    情况2: 有数字参数

    var arr = new Array(5); // 括号中的10代表实例化的数组中的元素个数;
    console.log(arr); // 输出: [null,null,null,null,null]
    console.log(arr.length); // 输出: 5
    

    情况3: 有一系列数据参数

    var arr = new Array('A',"B",10,[1,2,3]);
    console.log(arr); // 输出: ['A',"B",10,[1,2,3]]
    console.log(arr.length); // 输出: 4
    

    3. 属性

    constructor: 返回对创建此对象的数组函数的引用

    var arr = new Array();
    
    console.log(arr.constructor); // 返回: [object Function]
    document.write(arr.constructor); // 返回: function Array() { [native code] }
    

    length: 返回数组的长度

    var arr = new Array(1,2,3);
    
    console.log(arr.length); // 3
    

    prototype: 有能力向对象添加属性和方法

    var arr = new Array();
    
    Array.prototype.name = "雷棠";
    console.log(arr.name); // 雷棠;
    

    4. 方法

    Array.concat(): 数组拼接

    var arr = new Array("hello");
    
    console.log(arr.concat(["world"])); // ["hello", "world"]
    console.log(arr.concat("world","!")) // ["hello","world","!"]
    

    Array.join(): 数组转字符串

    var arr = new Array(1,2,3,4);
    
    console.log(arr); // [1,2,3,4]
    console.log(arr.join()); // '1,2,3,4'
    console.log(arr.join("-")); // '1-2-3-4'
    

    Array.pop(): 删除数组的末尾元素

    var arr = new Array("A");
    console.log(arr.pop()); // 'A'
    console.log(arr.length); // 0
    
    console.log(arr.pop()); // undefined
    console.log(arr.length); // 0
    

    Array.push(): 往数组末尾添加元素

    var arr = new Array("A");
    console.log(arr); // "A"
    console.log(arr.length); // 1
    
    console.log(arr.push("B","C","D")); // 4
    console.log(arr); // ["A","B","C","D"]
    console.log(arr.length); // 4
    

    Array.reverse(): 倒序数组

    var arr = new Array("A","B","C");
    console.log(arr.reverse()); // ["C","B","A"]
    console.log(arr); // ["C","B","A"]
    

    Array.shift(): 删除数组的首个元素

    var arr = new Array("A","B");
    console.log(arr.shift()); // "A"
    console.log(arr); // ["B"]
    console.log(arr.shift()); // "B"
    console.log(arr); // []
    console.log(arr.shift()); // undefined
    console.log(arr); // []
    

    Array.slice(): 从已有数组中返回选定的元素

    var arr = new Array("A","B","C","D","E");
    
    console.log(arr.slice()); // ["A","B","C","D","E"]
    console.log(arr.slice(1)); // ["B","C","D","E"]
    console.log(arr.slice(1,3)); // ["B","C"]
    console.log(arr.slice(end=3)); // ["D","E"]
    console.log(arr.slice(-1,-2)); // []
    console.log(arr.slice(-2,-1)); // ["D"]
    console.log(arr); // ["A","B","C","D","E"]
    
    

    Array.sort(): 数组元素排序

    var arr1 = new Array(1,3,2,4,6,5);
    console.log(arr1.sort()); // [1,2,3,4,5,6]
    console.log(arr1); // [1,2,3,4,5,6]
    
    var arr2 = new Array("1","3","2","4","6","5");
    console.log(arr2.sort()); // ["1","2","3","4","5","6"]
    console.log(arr2); // ["1","2","3","4","5","6"]
    
    var arr3 = new Array("B","d","A","c","C","D");
    console.log(arr3.sort()); // ["A","B","C","D","c","d"]
    console.log(arr3); // ["A","B","C","D","c","d"]
    

    Array.splice(): 删除并添加新元素

    var arr = new Array("A","B","C");
    console.log(arr.splice(2,1)); // ["C"]
    console.log(arr); // ["A","B"]
    console.log(arr.splice(1,0,"C")); // []
    console.log(arr); // ["A","C","B"]
    
    

    Array.toSource(): 返回对象源代码

    // 注意: 只有gecko内核的浏览器支持此方法
    function employee(name,job,born)
    {
    this.name=name;
    this.job=job;
    this.born=born;
    }
    
    var bill=new employee("Bill Gates","Engineer",1985);
    
    document.write(bill.toSource()); // ({name:"Bill Gates", job:"Engineer", born:1985}) 
    

    Array.toString(): 数组转字符串并返回结果

    var arr = new Array(1,2,3,4);
    console.log(arr.toString()); // "1,2,3,4"
    

    Array.toLocalString(): 转换为本地数组并返回

    var arr = new Array(1,2,3,4);
    console.log(arr.toLocaleString()); // "1,2,3,4"
    

    Array.unshift(): 向数组开头添加一个或多个数组并返回新的长度

    // 注意: 在IE中无法正常工作
    var arr = new Array(0,1,2);
    console.log(arr.unshift(-1,-2)); // 5
    console.log(arr); // [-1,-2,0,1,2]
    console.log(arr.unshift()); // 5
    

    Array.valueOf(): 返回数组对象原始值

    var arr1 = new Array(1,2,3);
    console.log(arr1.valueOf()); // [1,2,3]
    

    5. 结论

    OK, 这是目前收集到的所有Array对象的属性和方法的使用示例, 都是非常基础和简单的, 在初期应该会经常翻阅.

  • 相关阅读:
    DockerAPI版本不匹配的问题
    Linux文件系统
    队列

    多维数组
    字符串
    线性表
    ARM编辑、编译工具
    南京IT公司
    数据结构:用单链表实现的队列(2)
  • 原文地址:https://www.cnblogs.com/aisowe/p/15245619.html
Copyright © 2020-2023  润新知