在前端中逗号是比较常见的符号之一,我们经常可以使用逗号来做一些未完成的运算,直到结束。
例如:
alert(1),alert(2),console.log(10);
var a = 10,b = 3;
当然还有一些稀奇古怪的玩法,比如这样:
1, 2, 3, 4 // 4
var a = (3, 55) // a=55
var a, b // 声明了 a 和 b
for (var i = 0, j = 10; i < j; i++){}
(12, l_y=244, 13+4, 8) // 8
(12, eval)('99') // 99 骚操作方法 -Number类型
(1,String)(2) // ‘2’ 字符串类型
这个运算符的作用是将表达式连接起来,里面的各个表达式都会独自计算,返回最后一个表达式的运算结果。优先级处于最低,运算方向是从左到右,常常会和括号()连用,以提高运算符等级。
需要注意的是,以下的表达式是错的:
var liyou = 1, 4
因为=的优先级先于,,赋值先于逗号执行,然而左边赋值又不是一个正规的赋值表达式,因此会抛出Uncaught SyntaxError: Unexpected number的错误。这时候就需要一个括号了,括号的作用还是蛮大的。
例如:
var liyou = (1, 4)
需要注意的是,以上的,不能当做人类语法中的逗号使用,要看做一个程序上的运算符,和^&|这些类似。
另外不是所有在js中的逗号都是逗号运算符,比如函数参数add(1, 2, 3, 4, 5)他就是普通的逗号。
本文原创,未经作者允许不可转载!
更多内容,欢迎关注作者微信公众号:李游leo老师在线课堂!
暂无评论
违反法律法规
侵犯个人权益
有害网站环境