Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/456.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript奇怪变量var x=(x,y==“z”);_Javascript_Scope_Var - Fatal编程技术网

Javascript奇怪变量var x=(x,y==“z”);

Javascript奇怪变量var x=(x,y==“z”);,javascript,scope,var,Javascript,Scope,Var,嗨,伙计们,我正在使用一个名为engage的评估引擎,下面是tut im 然而,你可以看到上面有一条线,我不知道它应该做什么。最好提到win变量没有在代码的其他地方定义。这是Javascripts的作用 逗号运算符计算每个操作数(从左到右)并返回最后一个操作数的值 因此,win将通过feedback[i][“final”]==“win”的值,即true或false。例如: var win=(win,feedback[i]["final"] =="win"); statment的声明如下所示:

嗨,伙计们,我正在使用一个名为engage的评估引擎,下面是tut im


然而,你可以看到上面有一条线,我不知道它应该做什么。最好提到win变量没有在代码的其他地方定义。

这是Javascripts的作用

逗号运算符计算每个操作数(从左到右)并返回最后一个操作数的值

因此,
win
将通过
feedback[i][“final”]==“win”
的值,即
true
false
。例如:

var win=(win,feedback[i]["final"] =="win");
statment的声明如下所示:

var x = (1,2,3); // x => 3
在功能上,它的作用与:

var win = (                          // declared a variable named 'win'
    win,                             // the value of win is undefined (as it's declared by var)
    feedback[i]["final"] =="win"     // return this value, assign it to 'win'
);

在这种情况下,就功能而言,与执行
var x=(x,y==z)
相比,执行
var x=(y==z)
没有真正的优势。执行第一个操作类似于执行以下操作:

var win = ( fedback[i]["final"] == "win" );

win
是用提升到作用域开头的
var win
定义的。除此之外,
win
将成为等式的结果。但是这个结构对我来说没有意义。我可能错了,但它似乎只是反馈[I][“final”]=“win”的结果。所以如果反馈[I][“final”]等于“win”,那么它就是真的吗?是的,它应该完全等于
var win=(fedback[I][“final”]=“win”)所以我不知道为什么它是这样写的,也许代码是自动生成的。@user3454070它准确地取决于最后一项,但根本没有真正的理由让
获胜,
部分。或者是否有一种情况下,
win,
的存在会起作用?@t.niese不,真的没有任何理由拥有它,除非它是在最后,并且
win
是在其他地方定义的。否则,最好使用应用某些操作的语句,例如
varx=(i++,i++,i)
var x;
x;                          
x = (y == z);