Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/81.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 如何检查JS中的变量是否递增?_Javascript_Increment - Fatal编程技术网

Javascript 如何检查JS中的变量是否递增?

Javascript 如何检查JS中的变量是否递增?,javascript,increment,Javascript,Increment,如何检查JS中的值是否已递增 var count = 0; function A () { /// creates random nodes /// does some math, outputs e1, e2, e3, etc count ++; } function toggle(count) { if (count ++ occurred) && (toggle.checked) { /// then take e1,

如何检查JS中的值是否已递增

var count = 0; 

function A () {
    /// creates random nodes
    /// does some math, outputs e1, e2, e3, etc
    count ++; 
    }

function toggle(count) {
    if (count ++ occurred) && (toggle.checked) {
    /// then take e1, e2, e3 and store in array X ...
    /// take array X and count, put into CSV file, send to designated email 
       }
    }
我有一个工作正常的函数,但棘手的部分是如何记录e1,e2,e3到阵列X只有当切换是打开的


提前感谢。

您可以使用
布尔变量检查
计数是否已递增。在检查其状态一次后,应重置其状态,以便为下一次检查做好准备

var count = 0; 
let incremented = false;

function a {
  /// does some stuff
  count ++; 
  incremented = true;
}

function b(count) {
  if ( incremented && toggle.checked ) {
    /// then do xyz...
    incremented = false;
  }
}

您可以使用
boolean
变量检查
count
是否已递增。在检查其状态一次后,应重置其状态,以便为下一次检查做好准备

var count = 0; 
let incremented = false;

function a {
  /// does some stuff
  count ++; 
  incremented = true;
}

function b(count) {
  if ( incremented && toggle.checked ) {
    /// then do xyz...
    incremented = false;
  }
}

尽管这看起来像是一个经典,但在某些情况下,您可能希望对值的更改做出反应。在这种情况下,这将是实现以下目标的一种方式:

const observer=(过滤器、onChange、obj)=>新代理(obj、{
设置(目标、键、值){
if(过滤器(键、目标[键]、值)){
onChange(key,target[key],value);
}
目标[键]=值;
返回true;
}
});
const triggerOnIncrement=(键,oldValue,newValue)=>oldValue{
log(`${key}已从${oldValue}更改为${newValue}`);
};
常量=观察者(triggerOnIncrement,onValueChanged{
计数:0,
});
_.count++;
_.count++;

_.count++尽管这看起来很经典,但在某些情况下,您可能希望对值的更改做出反应。在这种情况下,这将是实现以下目标的一种方式:

const observer=(过滤器、onChange、obj)=>新代理(obj、{
设置(目标、键、值){
if(过滤器(键、目标[键]、值)){
onChange(key,target[key],value);
}
目标[键]=值;
返回true;
}
});
const triggerOnIncrement=(键,oldValue,newValue)=>oldValue{
log(`${key}已从${oldValue}更改为${newValue}`);
};
常量=观察者(triggerOnIncrement,onValueChanged{
计数:0,
});
_.count++;
_.count++;

_.count++如果需要检查变量计数是否至少增加一次,可以直接使用计数作为条件:

function b(count) {
    if (count) && (toggle.checked) {
    /// then do xyz...
       }
}

在JS中,如果变量x为0,则在if语句中将被视为“false”。

如果需要检查变量计数是否至少增加一次,则可以直接使用计数作为条件:

function b(count) {
    if (count) && (toggle.checked) {
    /// then do xyz...
       }
}

在JS中,如果变量x为0,则在if语句中会被视为“false”。

如果知道起始值,可以检查当前值是否大于初始值。切换是为了什么?没有通用的“此已更改”功能。您必须保留对变量初始值的引用,稍后再次检查变量,看看它是否不同。尽管即使这样也不能保证没有发生任何变化,因为您可能会在
val++
之后加上
val--
。如果您想确保某些内容发生了变化,您可以添加一个标志(另一个变量),并在每次更改
计数
变量时将其设置为
true
。您考虑过使用setter吗?如果知道起始值,可以检查当前值是否大于初始值。切换的目的是什么?没有通用的“此已更改”功能。您必须保留对变量初始值的引用,稍后再次检查变量,看看它是否不同。尽管即使这样也不能保证没有发生任何变化,因为您可能会在
val++
之后加上
val--
。如果您想确保某些内容发生了变化,您可以添加一个标志(另一个变量),并在每次更改
计数
变量时将其设置为
true
。您考虑过使用setter吗?