前言: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);

最新文章

  1. 解读ASP.NET 5 &amp; MVC6系列(2):初识项目
  2. dbms_output.put_line长度限制问题
  3. 表单和 HTML 辅助方法&ndash; ASP.NET MVC 4 系列
  4. CentOS7.2部署OpenStack(一)—环境准备
  5. 实验二 PHP基本语法实验
  6. [Android Pro] svn实例
  7. SPAdes
  8. 张恭庆编《泛函分析讲义》第二章第5节 共轭空间 $\bullet$ 弱收敛 $\bullet$ 自反空间习题解答
  9. PHP数组的操作
  10. Python的面向对象3
  11. ios开发中全局变量设置和调用方法
  12. 【Js应用实例】javascript管理cookie
  13. 一步步搭建Retrofit+RxJava+MVP网络请求框架(一)
  14. JavaScript call()和apply()
  15. C# 解析json数据出现---锘縖
  16. Kafka运行一段时间报错Too many open files
  17. tomcat+apache的集群配置
  18. php curl抓取类分享
  19. [administrative][archlinux][clonezilla][disk cloning] 一块 windows 10 硬盘的备份
  20. [Java in NetBeans] Lesson 01. Java Programming Basics

热门文章

  1. IdentityServer4 密码模式实现
  2. Java内存模型Cookbook
  3. 《JAVA与模式》之代理模式
  4. JSON JSONPath
  5. HTML编码规范 - 1
  6. Linux笔记:vi常用命令
  7. C#的进度条透明的情况(穿透问题)
  8. 在Bash中定制炫酷的命令提示符
  9. 链式编程:遇到多个构造器参数(Constructor Parameters)时要考虑用构建器(Builder)
  10. redis集群与分片(2)-Redis Cluster集群的搭建与实践