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


Posted in Javascript onOctober 26, 2016

在学习《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。实际结果如下所示:

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

这是为什么呢,答案就是:数组直接量的语法允许有可选的结尾的逗号,故[,,]、[1,,]、[,1,]这三种情况JS引擎会认为最后一个逗号是结尾的逗号,所以就认为只有两个元素,而[,,1]这种情况人为的给最后一个逗号后面又添加了一个元素,所以最后一个逗号就不是结尾了,所以我们就能想到[,,1,]的长度仍然为3。

以上所述是小编给大家介绍的JavaScript中省略元素对数组长度的影响,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
Mootools 1.2教程 滚动条(Slider)
Sep 15 Javascript
Javascript 面试题随笔
Mar 31 Javascript
读jQuery之九 一些瑕疵说明
Jun 21 Javascript
javascript自然分类法算法实现代码
Oct 11 Javascript
JavaScript实现添加、查找、删除元素
Jul 02 Javascript
jQuery 获取跨域XML(RSS)数据的相关总结分析
May 18 Javascript
加载 vue 远程代码的组件实例详解
Nov 20 Javascript
angular2/ionic2 实现搜索结果中的搜索关键字高亮的示例
Aug 17 Javascript
详解Vue基于vue-quill-editor富文本编辑器使用心得
Jan 03 Javascript
Android 自定义view仿微信相机单击拍照长按录视频按钮
Jul 19 Javascript
微信小程序点击顶部导航栏切换样式代码实例
Nov 12 Javascript
jQuery实现的上拉刷新功能组件示例
May 01 jQuery
BootStrap tab选项卡使用小结
Aug 09 #Javascript
Bootstrap按钮功能之查询按钮和重置按钮
Oct 26 #Javascript
AngularJS中如何使用echart插件示例详解
Oct 26 #Javascript
BootStrap modal模态弹窗使用小结
Oct 26 #Javascript
BootStrap实现带有增删改查功能的表格(DEMO详解)
Oct 26 #Javascript
BootStrap tooltip提示框使用小结
Oct 26 #Javascript
Bootstrap CDN和本地化环境搭建
Oct 26 #Javascript
You might like
php基础教程 php内置函数实例教程
2012/08/21 PHP
用 Composer构建自己的 PHP 框架之使用 ORM
2014/10/30 PHP
php+redis实现注册、删除、编辑、分页、登录、关注等功能示例
2017/02/15 PHP
JavaScript 学习笔记(七)字符串的连接
2009/12/31 Javascript
基于jquery的气泡提示效果
2010/05/31 Javascript
关于hashchangebroker和statehashable的补充文档
2011/08/08 Javascript
jquery.pagination.js 无刷新分页实现步骤分享
2012/05/23 Javascript
十个迅速提升JQuery性能让你的JQuery跑得更快
2012/12/10 Javascript
JS动态创建Table,Tr,Td并赋值的具体实现
2013/07/05 Javascript
node.js实现快速截图
2016/08/27 Javascript
JQuery查找子元素find()和遍历集合each的方法总结
2017/03/07 Javascript
element 结合vue 在表单验证时有值却提示错误的解决办法
2018/01/22 Javascript
Vue 全局loading组件实例详解
2018/05/29 Javascript
详解angular分页插件tm.pagination二次触发问题解决方案
2018/07/20 Javascript
深入浅出了解Node.js Streams
2019/05/27 Javascript
Vue路由的模块自动化与统一加载实现
2020/06/05 Javascript
Python实现的NN神经网络算法完整示例
2018/06/19 Python
Python读取系统文件夹内所有文件并统计数量的方法
2018/10/23 Python
django如何实现视图重定向
2019/07/24 Python
Python+Opencv身份证号码区域提取及识别实现
2020/08/25 Python
俄罗斯的精英皮具:Wittchen
2018/01/29 全球购物
奥地利度假券的专家:we-are.travel
2019/04/10 全球购物
俄罗斯第一家篮球店:StreetBall
2020/07/30 全球购物
PHP面试题附答案
2015/11/28 面试题
酒店个人培训自我鉴定
2013/12/11 职场文书
会计职业生涯规划书
2014/01/13 职场文书
文科毕业生自荐书范文
2014/04/17 职场文书
监督检查工作方案
2014/05/28 职场文书
培训科主任岗位职责
2014/08/08 职场文书
4s店活动策划方案
2014/08/25 职场文书
学风建设演讲稿
2014/09/12 职场文书
2015学校年度工作总结
2015/05/11 职场文书
紧急迫降观后感
2015/06/15 职场文书
2016消防宣传标语口号
2015/12/26 职场文书
世界十大评分最高的动漫,CLANNAD上榜,第八赚足人们眼泪
2022/03/18 日漫
Python pyecharts绘制条形图详解
2022/04/02 Python