zoukankan      html  css  js  c++  java
  • push() 方法将一个或多个元素添加到数组的末尾,并返回新数组的长度


    var numbers = [1, 2, 3]; numbers.push(4); console.log(numbers); // [1, 2, 3, 4] numbers.push(5, 6, 7); console.log(numbers); // [1, 2, 3, 4, 5, 6, 7]
    var sports = ["soccer", "baseball"];
    var total = sports.push("football", "swimming");
    
    console.log(sports); 
    // ["soccer", "baseball", "football", "swimming"]
    
    console.log(total);  
    // 4
    

      

    语法

    arr.push(element1, ..., elementN)

    参数

    elementN
    被添加到数组末尾的元素。

    返回值

    当调用该方法时,新的 length 属性值将被返回。

    描述

    push方法将值追加到数组中。

    push 方法有意具有通用性。该方法和 call() 或 apply() 一起使用时,可应用在类似数组的对象上。push 方法根据 length 属性来决定从哪里开始插入给定的值。如果 length 不能被转成一个数值,则插入的元素索引为 0,包括 length 不存在时。当 length 不存在时,将会创建它。

    唯一的原生类数组(array-like)对象是 Strings,尽管如此,它们并不适用该方法,因为字符串是不可改变的。

    合并两个数组

    var vegetables = ['parsnip', 'potato'];
    var moreVegs = ['celery', 'beetroot'];
    
    // 将第二个数组融合进第一个数组
    // 相当于 vegetables.push('celery', 'beetroot');
    Array.prototype.push.apply(vegetables, moreVegs);
    
    console.log(vegetables); 
    // ['parsnip', 'potato', 'celery', 'beetroot']

      

    像数组一样使用对象

    如上所述,push 是特意设计为通用的,我们可以使用它来获得便利。正如下面的例子所示,Array.prototype.push 可以在一个对象上工作。 注意,我们没有创建一个数组来存储对象的集合。 相反,我们将该集合存储在对象本身上,并使用在 Array.prototype.push 上使用的 call来调用该方法,使其认为我们正在处理数组,而它只是像平常一样运作,这要感谢 JavaScript 允许我们建立任意的执行上下文。

    var obj = {
        length: 0,
    
        addElem: function addElem (elem) {
            // obj.length is automatically incremented 
            // every time an element is added.
            [].push.call(this, elem);
        }
    };
    
    // Let's add some empty objects just to illustrate.
    obj.addElem({});
    obj.addElem({});
    console.log(obj.length);
    // → 2
    

      注意,尽管 obj 不是数组,但是 push 方法成功地使 obj 的 length 属性增长了,就像我们处理一个实际的数组一样。

  • 相关阅读:
    Tomcat和nginx负载均衡算法
    (转)CSS浮动(float,clear)通俗讲解
    MvcSiteMapProvider配置使用
    idea出现jdk版本过低导致无法通过编译
    java生成自己的doc文档
    RabbitMQ的应用场景
    java 变量和常量
    IDEA创建新空项目
    java中整型、浮点型、char型扩展
    java中数据类型占多少字节
  • 原文地址:https://www.cnblogs.com/clear93/p/7928845.html
Copyright © 2011-2022 走看看