I dette eksempel lærer du at skrive et JavaScript-program, der kontrollerer, om et tal er en float- eller en heltalværdi.
For at forstå dette eksempel skal du have kendskab til følgende JavaScript-programmeringsemner:
- JavaScript Regex
- JavaScript-nummer. Er heltal ()
- JavaScript type af operatør
Eksempel 1: Brug af Number.isInteger ()
// program to check if a number is a float or integer value function checkNumber(x) ( // check if the passed value is a number if(typeof x == 'number' && !isNaN(x))( // check if it is integer if (Number.isInteger(x)) ( console.log(`$(x) is integer.`); ) else ( console.log(`$(x) is a float value.`); ) ) else ( console.log(`$(x) is not a number`); ) ) checkNumber('hello'); checkNumber(44); checkNumber(3.4); checkNumber(-3.4); checkNumber(NaN);
Produktion
hej er ikke et tal 44 er heltal. 3.4 er en floatværdi. -3.4 er en flydende værdi. NaN er ikke et tal
I ovenstående program kontrolleres den beståede værdi, hvis det er en heltalsværdi eller en floatværdi.
- Den
typeof
operatør bruges til at kontrollere datatypen for det passerede værdi. - De
isNaN()
kontrollerer fremgangsmåden, hvis den passerede værdi er et tal. - Den
Number.isInteger()
metode benyttes til at kontrollere, om antallet er en heltalsværdi.
Eksempel 2: Brug af Regex
// program to check if a number is a float or integer value function checkNumber(x) ( let regexPattern = /^-?(0-9)+$/; // check if the passed number is integer or float let result = regexPattern.test(x); if(result) ( console.log(`$(x) is an integer.`); ) else ( console.log(`$(x) is a float value.`) ) ) checkNumber(44); checkNumber(-44); checkNumber(3.4); checkNumber(-3.4);
Produktion
44 er et heltal. -44 er et heltal. 3.4 er en floatværdi. -3.4 er en flydende værdi.
I ovenstående eksempel bruges regex-mønster til at kontrollere, om det beståede argument er en heltal- eller flydeværdi.
Mønsteret /^-?(0-9)+$/
søger efter heltalets værdi.
Den test()
metode af RegExp
objektet anvendes til at teste det mønster med den givne værdi.
Bemærk : Ovenstående program fungerer kun for tal.