JavaScript中圆括号()和方括号[]的特殊用法疑问解答


Posted in Javascript onAugust 06, 2013

(1, 2, 3);
// return 3; 很好奇,为什么会返回3?这是什么机制?圆括号起到了什么作用?

(1, 2, 3, alert )("Amazing!");
// 这里就更好玩了,居然可以直接调用alert ;经过测试,全局函数都可以通过这样调用。

下面是关于 方括号[] 的疑问:
在JS中,[]几乎就和数组画上了等号,但也有神奇的时候。

[1,2,3][1];
// return 2; 当然这种方法也经常使用,常用于数组的索引 和 调用的对象的响应属性名存放在某个变量时。
[1,2,3][1,2];

//return 3 ; 这种情况就有趣多了,和上面圆括号的情况很像,都会返回括号内的最后一个值

在(1,2,3)里,括号和逗号都是运算符,逗号运算符返回最后一个表达式的求值结果,具体规则可自己查。
("Amazing")的括号表示函数调用。
alert是一个函数对象,当它作为表达式的求值结果返回,当然可以被调用。

[1,2,3]这里的方括号是声明数组常量,紧跟[1]表示取数组元素。[1,2,3][1]意为取[1,2,3]这个数组里的第一个元素,即2(下标从0开始)

[1,2,3][1,2]=[1,2,3][(1,2)]=[1,2,3][2]=3

Javascript 相关文章推荐
JQuery+JS实现仿百度搜索结果中关键字变色效果
Aug 02 Javascript
自己写的兼容ie和ff的在线文本编辑器类似ewebeditor
Dec 12 Javascript
jQuery ajax serialize()方法的使用以及常见问题解决
Jan 27 Javascript
jQuery渐变发光导航菜单的实例代码
Mar 27 Javascript
EasyUI中combobox默认值注意事项
Mar 01 Javascript
JavaScript去除数组里重复值的方法
Jul 13 Javascript
jQuery使用$.ajax进行异步刷新的方法(附demo下载)
Dec 04 Javascript
jquery根据td给相同tr下其他td赋值的实现方法
Oct 05 Javascript
jQuery动态移除和添加背景图片的方法详解
Mar 07 Javascript
浅谈Angular文字折叠展开组件的原理分析
Nov 24 Javascript
vue点击页面空白处实现保存功能
Nov 06 Javascript
原生JS实现无缝轮播图片
Jun 24 Javascript
javascript 获取模态窗口的滚动位置代码
Aug 06 #Javascript
JS this作用域以及GET传输值过长的问题解决方法
Aug 06 #Javascript
JS常见问题整理(持续更新)
Aug 06 #Javascript
JavaScript等比例缩放图片控制超出范围的图片
Aug 06 #Javascript
JQuery操作三大控件(下拉,单选,复选)的方法
Aug 06 #Javascript
浅析js中2个等号与3个等号的区别
Aug 06 #Javascript
JavaScript:Div层拖动效果实例代码
Aug 06 #Javascript
You might like
PHP获取文件后缀名的三个函数
2012/10/15 PHP
PHP中类属性与类静态变量的访问方法示例
2016/07/13 PHP
PHP7匿名类的用法示例
2019/04/05 PHP
解决laravel session失效的问题
2019/10/14 PHP
用javascript实现的仿Flash广告图片轮换效果
2007/04/24 Javascript
JavaScript 申明函数的三种方法 每个函数就是一个对象(一)
2009/12/04 Javascript
javascript结合canvas实现图片旋转效果
2015/05/03 Javascript
js实现适用于素材网站的黑色多级菜单导航条效果
2015/08/24 Javascript
jQuery实现MSN中文网滑动Tab菜单效果代码
2015/09/09 Javascript
JavaScript焦点事件、鼠标事件和滚轮事件使用详解
2016/01/15 Javascript
jQuery插件Validate实现自定义校验结果样式
2016/01/18 Javascript
three.js快速入门【推荐】
2017/01/21 Javascript
vue router仿天猫底部导航栏功能
2017/10/18 Javascript
解决Vue 浏览器后退无法触发beforeRouteLeave的问题
2017/12/24 Javascript
微信小程序wxml列表渲染原理解析
2019/11/27 Javascript
Nodejs文件上传、监听上传进度的代码
2020/03/27 NodeJs
python中List的sort方法指南
2014/09/01 Python
Python中类型关系和继承关系实例详解
2015/05/25 Python
Python实现简单拆分PDF文件的方法
2015/07/30 Python
Python基于最小二乘法实现曲线拟合示例
2018/06/14 Python
对python 合并 累加两个dict的实例详解
2019/01/21 Python
python 二维数组90度旋转的方法
2019/01/28 Python
linux中如何使用python3获取ip地址
2019/07/15 Python
Python模块汇总(常用第三方库)
2019/10/07 Python
django序列化serializers过程解析
2019/12/14 Python
基于python实现微信好友数据分析(简单)
2020/02/16 Python
python变量的作用域是什么
2020/05/26 Python
HTML5之SVG 2D入门10—滤镜的定义及使用
2013/01/30 HTML / CSS
Html5页面点击遮罩层背景关闭遮罩层
2020/11/30 HTML / CSS
英国领先的大码时装品牌之一:Elvi
2018/08/26 全球购物
Brasty波兰:香水、化妆品、手表网上商店
2019/04/15 全球购物
党校学习思想汇报
2014/01/06 职场文书
离婚被告代理词
2015/05/23 职场文书
雨雪天气温馨提示
2015/07/15 职场文书
新党员入党决心书
2015/09/22 职场文书
导游带团欢迎词
2015/09/30 职场文书