2017-03-15 3 views
0

Hallo Ich muss ein vorheriges Ergebnis, das ich von einer API mit der neuen bekomme, vergleichen. Die Sache ist, dass ich den Wert nicht kenne, den ich bekommen werde. Daher verwende ich eine zufällige Funktion und eine Variable namens oldShowNumber, die das alte Ergebnis aus der API speichert und es mit dem neuen Ergebnis vergleicht, das ich newrandom nennen werde.Speichern und vergleichen Sie mit dem vorherigen Ergebnis, wo setze ich Counter

Ich habe versucht, einen Zähler zu verwenden, also das nächste Mal, wenn es in den Zähler> 1 Zustand eintritt. Übertreibe ich mich selbst?

Das ist mein Skript:

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

die '+' Operator String-Verkettung enthalten ist überlastet bleiben ersetzen. Also "20" +20 === "2020" und "20 + 20 === 40" –

Antwort

1

Sie benötigen die Informationen zu speichern, ob Sie bereits eine alte Nummer haben und wenn ja, wird der Wert der Zahl.

Eine übliche Technik besteht darin, eine Variable mit undefined zu initialisieren, um auf den ersten Fall zu verweisen und im zweiten Fall eine Zahl zuzuweisen.

Deshalb: Initialisieren oldShowNumber mit undefined und

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

mit

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