JavaScript中省略元素对数组长度的影响
在学习《JavaScript权威指南》第六版的第7.1节中通过数组直接量创建数组时,我们可以不给数组的某个元素赋值,它就会使undefined。虽然是undefined,但我们调用数组对象的length属性时undefined也会导致length加1。有如下所示的四种情况:
var undef0 = [,,]; var undef1 = [1,,]; var undef2 = [,1,]; var undef3 = [,,1]; console.log(undef0.length); console.log(undef1.length); console.log(undef2.length); console.log(undef3.length);
我们可以猜一下四个console.log输出的长度各是多少,之前我一定会猜都是3。实际结果如下所示:
这是为什么呢,答案就是:数组直接量的语法允许有可选的结尾的逗号,故[,,]、[1,,]、[,1,]这三种情况JS引擎会认为最后一个逗号是结尾的逗号,所以就认为只有两个元素,而[,,1]这种情况人为的给最后一个逗号后面又添加了一个元素,所以最后一个逗号就不是结尾了,所以我们就能想到[,,1,]的长度仍然为3。
以上所述是小编给大家介绍的JavaScript中省略元素对数组长度的影响,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
- Javascript 跨域知识详细介绍
- Java中常用缓存Cache机制的实现
- JavaScript中访问id对象 属性的方式访问属性(实例代码)
- RegExp 随笔 JavaScript RegExp 对象
- JavaScript实现使用Canvas绘制图形的基本教程
- Java开发环境jdk 1.8安装配置方法(Win7 64位系统/windows server 2008)
- Javascript将字符串日期格式化为yyyy-mm-dd的方法
- JavaScript登录验证码的实现
- javascript iframe跨域详解
- Java微信支付-微信红包
- java从字符串中提取数字的简单实例
- Java doGet, doPost方法和文件上传实例代码
相关文章
JS localStorage存储对象,sessionStorage存储数组对象操作示例
这篇文章主要介绍了JS localStorage存储对象,sessionStorage存储数组对象操作,结合实例形式详细分析了JS使用localStorage存储对象以及sessionStorage存储数组对象相关操作技巧与注意事项,需要的朋友可以参考下2020-02-02Javascript本地存储localStorage看这一篇就够了
这篇文章主要给大家介绍了关于Javascript本地存储localStorage的相关资料,localStorage会可以将第一次请求的数据直接存储到本地,这个相当于一个5M大小的针对于前端页面的数据库,需要的朋友可以参考下2024-07-07
最新评论