数组的空元素empty表示空位, 它不是一种数据类型, 而是由于人为修改arr.length 或者写入时多写了逗号造成的.

var arr = [1,2,3,4,,,5];
arr.length; // arr.length = 10;
arr; // [1, 2, 3, 4, empty × 2, 5, empty × 3]

undefined是一种数据类型, 在数组中表示这个位置的值未定义, 但它仍然指向某个内存地址, 这个内存地址指向的是undefined;

var arr = [1,2,3,undefined,4,5];
arr.length; //

empty和undefined在操作数组时的主要区别在于:

使用数组的forEach()方法遍历时会自动忽略空位, 而使用for循环则会将empty转换为undefined并遍历.

最新文章

  1. Number of 1 Bits(Difficulty: Easy)
  2. 获取真实ip的报告
  3. UVa 11021 - Tribles
  4. Linux中查看进程的多线程
  5. ORA-12154 终极解决办法
  6. 为什么从PhoneGap中逃离
  7. 转】Nginx+tomcat配置集群负载均衡
  8. Hibernate 的*.hbm.xml文件的填写技巧
  9. Java抽象类深入理解-----模板方法设计模式(Templete Method)
  10. 连不上VSS 【转】
  11. gdb调试python
  12. DSP TMS320C6000基础学习(7)—— Bootloader与VectorTable
  13. 一致性哈希java实现
  14. STL:STL各种容器的使用时机详解
  15. Java 过一下基础
  16. luogu1983 车站分级 (拓扑排序)
  17. Vue父子组件和非父子组件传值问题
  18. TensorFlow占位符操作:tf.placeholder_with_default
  19. HTML and CSS学习概述-续
  20. 10.Date对象

热门文章

  1. java定时案例
  2. Qt 中 Oracle 数据库 QOCI 驱动问题及解决
  3. 调用微信公众平台扫一扫示例及解决接口报错 { "errMsg": "config:invalid signature" }
  4. Keyframe类-动画中关键帧概念
  5. 阶段5 3.微服务项目【学成在线】_day07 课程管理实战_05-课程修改实战分析
  6. Intellij-编码设置
  7. (十六)Centos之安装mysql
  8. PostgreSQL学习笔记——摘要
  9. Centos7安装gitlab11 学习笔记之基础概念、部署安装、权限管理、issue管理
  10. 《ucore lab1 exercise1》实验报告