[英]What is the logic behind Assignments in Conditionals and Assignments in Returns
我不会对这个故事感到厌烦,但是从本质上讲,我有一些晦涩难懂的JavaScript可以很好地处理所有问题,但是我在代码中遇到了两种我从未见过的模式。
下面的此功能包含两种模式。
var a = function() {
if (h = true,
T(),
DEVELOPMENT && "#y0" == window.location.hash)
return game.playRegion = "eu",
game.playRoom = "ffa1",
game.playInvited = true,
game.myOriginalName = window.location.hash.substr(1),
void Games.start(game.myOriginalName, true);
f || (I(),
Games.updateRegion(false),
Games.updateType(false),
C())
}
if
语句。 我从未见过if
do赋值和调用函数,因此我不了解条件逻辑。 我if
可以将语句移到if
之上,否则除非满足全部条件,否则语句不运行? 我可以这样做吗? h = true;
T();
if (DEVELOPMENT && window.location.hash === "#y0"){}
return
是怎么回事? 返回是一系列语句,那么实际上返回的是什么? void
是什么? 几乎所有内容都是JavaScript中的一种表达方式。
分配也只是表达式。 a = b
得出b
。
逗号运算符(已被广泛使用)求值在逗号的右边,因此a, b, c
求值为c
。
void
接受任何表达式,并且始终求值为undefined
。
因此:
return a = b, void c();
if(d(), e) {}
等于:
a = b;
c();
return undefined;
d();
if(e) {}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.