Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/363.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计数器吗?_Javascript_Counter - Fatal编程技术网

这是JavaScript计数器吗?

这是JavaScript计数器吗?,javascript,counter,Javascript,Counter,我在各地都见过这种模式,但我不确定它的作用是什么: x.memb = x.memb ? x.memb + 1 : 1; 我想是柜台,但我不太确定。有人能解释一下它的作用和逻辑吗?如果x.memb已经定义,并且不是0,那么它会增加它。在其他情况下,它将其值设置为1 它基本上只是一个增量,用于处理未定义x.memb的情况 你也可以把它写成 x.memb = (x.memb||0) +1; 这可能更为惯用,因为value | | defaultValue是javascript中的一个常用构造。这是

我在各地都见过这种模式,但我不确定它的作用是什么:

x.memb = x.memb ? x.memb + 1 : 1;

我想是柜台,但我不太确定。有人能解释一下它的作用和逻辑吗?

如果
x.memb
已经定义,并且不是
0
,那么它会增加它。在其他情况下,它将其值设置为
1

它基本上只是一个增量,用于处理未定义
x.memb
的情况

你也可以把它写成

x.memb = (x.memb||0) +1;

这可能更为惯用,因为
value | | defaultValue
是javascript中的一个常用构造。

这是一个进行计数的三元运算符

本质上,它就是这样做的

if(x.memb)
   x.memb = xmemb + 1; //increment it
else
   xmemb = 1; //start it off 
这只是速记。如果
之前的内容为true,则返回
之前的内容:
如果为false,则返回
之后的内容:


请注意,这是一种非常方便的机制,适用于与计数无关的各种叉子。在这种情况下,它只是被这样使用

“三元运算符”搜索它。如果
x.memb
返回
true
,则递增它,否则将其设置为1。这只是一个语法糖