a = b = c; // 正常的链式赋值
(a = b) = c; // 不正常的链式赋值,但合法
- a=b=c, 是把c的值赋给a和b, 也就是说a,b, c相等
- (a=b)= c, 是先把b的值赋给a, 然后(a=b)的值返回的是a的变量, 此时值等于b, 然后把c的值赋给a, 也就是说a 和c 相等, 和b无关。
本文探讨了JavaScript中的链式赋值语法,解释了正常与不正常链式赋值的区别。正常情况下,a=b=c将使a、b和c的值相等。然而,(a=b)=c则首先将b的值赋给a,然后将c的值赋给a,导致a和c相等,而b与它们无关。理解这种赋值方式对于编写清晰的JavaScript代码至关重要。
a = b = c; // 正常的链式赋值
(a = b) = c; // 不正常的链式赋值,但合法

被折叠的 条评论
为什么被折叠?