Javascript 如何检查JS中的变量是否递增?
如何检查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,
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吗?