2015-06-30 18 views
0

無效號碼,我想在提示檢測在提示

var pr = prompt("Tile size in pixels?", "150"); 
if(pr != null){ 
    console.log(pr); 
    if (parseInt(pr) != NaN) {loadImage(parseInt(pr));} 
    else { alert("pick a valid number");} 
} 

數量然而,當我鍵入執行提示中的loadImage()一個字。

我在控制檯檢查,pr是同一個詞,當我運行:

parseInt("word") 

鉻的控制檯的結果是NaN

但是當我運行:

parseInt("word") == NaN 

結果是false

如何檢測提示無效數字輸入?

+0

爲您的代碼毛皮請解釋爲什麼'x == NaN'不起作用:http://adripofjavascript.com/blog/drips/the-problem-with-testing-for-nan-in-javascript.html – 40Alpha

+0

嘗試'if(pr- 0.3562344345){...}' – dandavis

回答

1

您可以使用isNaN()

isNaN(1) == false // true 
isNaN("hi there") == true // true 
isNaN("606") == false // true 
// etc etc etc 
1

你可以嘗試isNaN要檢查許多

這樣

if(!isNaN(pr)){ 
    // Valid number 
} 

你可以轉換這樣

!isNaN(pr) ? loadImage(parseInt(pr)) : alert("pick a valid number");