JavaScript中省略元素对数组长度的影响

 更新时间:2016年10月26日 11:33:09   作者:雨帘轻挂  
这篇文章主要介绍了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中省略元素对数组长度的影响,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • JS实现左右无缝轮播图代码

    JS实现左右无缝轮播图代码

    这篇文章主要介绍了JS实现左右无缝轮播图代码的相关资料,小编看本段代码非常不错,具有参考借鉴价值,特此分享脚本之家平台,需要的朋友可以参考下
    2016-05-05
  • tangram框架响应式加载图片方法

    tangram框架响应式加载图片方法

    这篇文章主要介绍了使用tangram框架响应式加载图片的方法,大家可以参考使用
    2013-11-11
  • JS localStorage存储对象,sessionStorage存储数组对象操作示例

    JS localStorage存储对象,sessionStorage存储数组对象操作示例

    这篇文章主要介绍了JS localStorage存储对象,sessionStorage存储数组对象操作,结合实例形式详细分析了JS使用localStorage存储对象以及sessionStorage存储数组对象相关操作技巧与注意事项,需要的朋友可以参考下
    2020-02-02
  • webpack结合express实现自动刷新的方法

    webpack结合express实现自动刷新的方法

    这篇文章主要给大家介绍了关于webpack结合express实现自动刷新的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用webpack具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-05-05
  • JavaScript格式化数字的函数代码

    JavaScript格式化数字的函数代码

    当要格式化的数字为null、空或非数字时,返回的结果。默认为0
    2010-11-11
  • 开发跨浏览器javascript常见注意事项

    开发跨浏览器javascript常见注意事项

    对于javascript的开发人员来说,多浏览器的支持性,一直是个问题,每次都要经过测试,多个浏览器,才能使用下面一些常见的一些注意事项。
    2009-01-01
  • Javascript本地存储localStorage看这一篇就够了

    Javascript本地存储localStorage看这一篇就够了

    这篇文章主要给大家介绍了关于Javascript本地存储localStorage的相关资料,localStorage会可以将第一次请求的数据直接存储到本地,这个相当于一个5M大小的针对于前端页面的数据库,需要的朋友可以参考下
    2024-07-07
  • 一文带你理解微信小程序中RPC通信的实现

    一文带你理解微信小程序中RPC通信的实现

    在微信小程序开发中,要实现两个线程之间的通信是一项重要的任务,所以本文就来讲讲如何使用小程序的 postMessage 和 addListener API 来实现在两个线程之间进行高效的 RPC 通信吧
    2023-06-06
  • js实现拖动模态框

    js实现拖动模态框

    这篇文章主要为大家详细介绍了js实现拖动模态框,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-07-07
  • JS动态获取当前时间,并写到特定的区域

    JS动态获取当前时间,并写到特定的区域

    JS动态获取当前时间,并写到特定的区域,需要的朋友可以参考一下
    2013-05-05

最新评论