zoukankan      html  css  js  c++  java
  • js 数组删除元素,并获得真实长度

    前言:js数组删除一般采用数组的 splice 方法和 delete 方法,但是采用 delete 方法后直接数组.kength 来获取数组长度是获取不了真实长度的,下面详细讲解一下。

    一、splice 方法

      splice ( index , len , [ item ] )   该方法会改变原始数组。

      index:数组开始下标。len:替换/删除的长度。item:替换的值,删除操作的话 item为空

      举例

            //清空整个数组
            arr.splice(0, arr.length);
            console.log(arr);
    
            //删除一个元素
            var arr = ["11", "22", "33", "44", "55"];
            arr.splice(1, 1);
            console.log(arr);
    
            //删除一个,增加两个
            arr.splice(1, 1, "34", "43");
            console.log(arr);

     二、delete 删除数组元素

      只是被删除的元素变成了 undefined,其他的元素的键值还是不变。

            var arr = ["11", "22", "33", "44", "55"];
            console.log(arr);
    
            delete arr[2];
            console.log(arr);
    
            for(var i = 0; i < arr.length; i++){
              console.log(arr[i]);
            }

    打印出来的结果:可以看出 delete 方式不会改变数组的长度,而且删除的元素只会变成 undefined。

      这时想获取数组真实长度,可以采取下面这种方式:

            var length = 0;
            for(var a in arr){
              length ++;
            }
            console.log("数组真实长度" + length);
  • 相关阅读:
    TP5.0防跳墙访问
    TP5.0上传添加数据库
    抽象类与接口
    instanceof 关键字
    abstract 抽象类
    extends 继承
    单例模式
    类的加载过程和对象的创建
    静态成员变量和非静态成员变量的区别
    this关键字
  • 原文地址:https://www.cnblogs.com/yuxiaole/p/9483479.html
Copyright © 2011-2022 走看看