JS 语法 问题 : ​console.log((1,2)) 为什么只输出 2

console.log((1,2))为什么只输出2,逗号运算符,它将先计算左边的参数,再计算右边的参数值。然后返回最右边参数的值。http://blog.csdn.net... console.log((1,2)) 为什么只输出 2
, 逗号运算符,它将先计算左边的参数,再计算右边的参数值。然后返回最右边参数的值。
http://blog.csdn.net/wl110231/article/details/8162732
展开
 我来答
灰常了dei
2015-06-29 · TA获得超过1736个赞
知道小有建树答主
回答量:596
采纳率:60%
帮助的人:626万
展开全部
console.log((1,2))就散知相当于
var a=(1,2); console.log(a);
而 alert(typeof a)得出a是Number类型,而上面这种声明方法(即在悉掘纳括号里面多个数值并用逗号隔开)睁没,实际上真正的值是最后一个,即var a=(1,2)=2;
所以console.log((1,2))=console.log(2)
console.log((1,2)+1)结果就是3
追问
var a=(1,2);
这样的语法是很奇怪的
但这样写不是抛出异常而是得到括号内最后一个值
这是在设计js的时候有什么特殊的意义吗?
追答
JS的语言很宽松,这种写法搁其他语言是会报错的。而且你这种写法基本不会见到,而这种写法的解析就相当于var a=1=2;所以a的值总是被最后一个覆盖,所以得出的一直是最后一个值
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式