2017-03-15 31 views
0

你好,我需要比较我从API获得的以前的结果与新的结果。问题是我不知道我会得到什么价值。因此,我使用了一个随机函数和一个名为oldShowNumber的变量,该变量将存储来自API的旧结果并将其与新的随机函数进行比较。存储并与以前的结果比较我在哪里柜台

我试图使用一个计数器,所以下次进入计数器> 1条件时。我是在让自己过度复杂吗?

这是我的脚本:

var array= ["100", "200", "300", "300"] 
 
var newrandom = array[Math.floor(Math.random() * array.length)]; 
 

 
let counter= 1 
 

 
var oldShowNumber= ""; 
 

 

 
(function (param){ 
 
    if(counter <= 1){ 
 
    oldShowNumber += param 
 
    
 
    counter +=1 
 
    
 
    } else if(counter > 1){ 
 
    if(oldShowNumber === param){ 
 
     console.log("They are the same it should stop") 
 
    } 
 
    } 
 

 
})(newrandom) 
 

 

 

 
console.log(oldShowNumber)

+1

记住'+'操作符被重载以包括字符串连接。所以''20“+20 ===”2020“'和'20 + 20 === 40'' –

回答

1

您需要存储的信息是否已经有一个老字号,如果是,表示数字的值。

一种常见的技术是用undefined初始化一个变量来引用第一种情况并在第二种情况下分配一个数字。

因此:与undefined初始化oldShowNumber和替换

var oldShowNumber= ""; 
.... 
if (counter <= 1) { 
... 
} else if (counter > 1) { 
... 
} 

var oldShowNumber; // identical with: var oldShowNumber = undefined; 
.... 
if (oldShowNumber === undefined) { 
... 
} else { 
... 
}