suchen

Heim  >  Fragen und Antworten  >  Hauptteil

javascript – js legt die maximale Länge eines Arrays fest

Setzen Sie beispielsweise die maximale Länge eines Arrays auf 9 und löschen Sie es, wenn es 9 überschreitet. So geht das

高洛峰高洛峰2788 Tage vor795

Antworte allen(7)Ich werde antworten

  • 高洛峰

    高洛峰2017-05-19 10:23:23

    //重写push方法
    Array.prototype.push = function(o,capacity){
        var start = this.length;
        if(capacity && start>=capacity){
            this.pop();
            start--;
        }
        start = Math.max(start,0);
        this.splice(start,0,o);
        return this;
    }

    Antwort
    0
  • 迷茫

    迷茫2017-05-19 10:23:23

    直接设置 arr.length=9; 不用判断!

    Antwort
    0
  • 習慣沉默

    習慣沉默2017-05-19 10:23:23

    用arr.length判断啊

    Antwort
    0
  • 阿神

    阿神2017-05-19 10:23:23

    if(arr.length > 9){

    arr.splice(9, 1);

    }

    Antwort
    0
  • 習慣沉默

    習慣沉默2017-05-19 10:23:23

    if(arr.length>9){
        arr.length=9;
    }

    这样就可以保证最大长度为9了

    Antwort
    0
  • 世界只因有你

    世界只因有你2017-05-19 10:23:23

    我假设你得应用场景是向数组中 push 元素时自动检测长度,抄过9就删除,那么每 push 一次就调用一次检测方法岂不是很僵硬,我有一个想法:重写 array 的 push 方法

    Antwort
    0
  • 巴扎黑

    巴扎黑2017-05-19 10:23:23

    arr.length=9;

    Antwort
    0
  • StornierenAntwort