導航:首頁 > 編程語言 > isNaN在js中是什麼意思

isNaN在js中是什麼意思

發布時間:2025-02-09 04:26:36

js 判斷一個值是否為數字

第一種方法 isNaN
isNaN返回一個 Boolean 值,指明提供的值是否是保留值 NaN (不是數字)。
NaN 即 Not a Number
isNaN(numValue)
但是如果numValue果是一個空串或是一個空格,而isNaN是做為數字0進行處理的,而parseInt與parseFloat是返回一個錯誤消息,這個isNaN檢查不嚴密而導致的。
第二種方法 正則表達式
function checkRate(input) {
var re = /^[0-9]+.?[0-9]*$/; //判斷字元串是否為數字 //判斷正整數 /^[1-9]+[0-9]*]*$/
var nubmer = document.getElementById(input).value;
if (!re.test(nubmer)) {
alert("請輸入數字");
document.getElementById(input).value = "";
return false;
}
}
第三種方法 利用parseFloat的返回值
/*----0313-------------驗證數據 是數字:返回true;不是數字:返回false--------工具方法,不含有業務邏輯---------------------*/
function isNotANumber(inputData) {
//isNaN(inputData)不能判斷空串或一個空格
//如果是一個空串或是一個空格,而isNaN是做為數字0進行處理的,而parseInt與parseFloat是返回一個錯誤消息,這個isNaN檢查不嚴密而導致的。
if (parseFloat(inputData).toString() == "NaN") {
//alert("請輸入數字……");注掉,放到調用時,由調用者彈出提示。
return false;
} else {
return true;
}
}
/*--End--0313-------------驗證數據 是數字:返回true;不是數字:返回false---------------------------------*/

⑵ js有哪幾種典型函數

第一類:常規函數
包括以下9個函數:
(1)alert函數:顯示一個警告對話框,包括一個OK按鈕。
(2)confirm函數:顯示一個確認對話框,包括OK、Cancel按鈕。
(3)escape函數:將字元轉換成Unicode碼。
(4)eval函數:計算表達式的結果。
(5)isNaN函數:測試是(true)否(false)不是一個數字。
(6)parseFloat函數:將字元串轉換成符點數字形式。
(7)parseInt函數:將符串轉換成整數數字形式(可指定幾進制)。
(8)prompt函數:顯示一個輸入對話框,提示等待用戶輸入。

第二類:數組函數
包括以下4個函數:
(1)join函數:轉換並連接數組中的所有元素為一個字元串。
(2)langth函數:返回數組的長度。
(3)reverse函數:將數組元素順序顛倒。
(4)sort函數:將數組元素重新排序。

第三類:日期函數
包括以下20個函數:
(1)getDate函數:返回日期的「日」部分,值為1~31
(2)getDay函數:返回星期幾,值為0~6,其中0表示星期日,1表示星期一,...,6表示星期六
(3)getHours函數:返回日期的「小時」部分,值為0~23。
(4)getMinutes函數:返回日期的「分鍾」部分,值為0~59。見上例。
(5)getMonth函數:返回日期的「月」部分,值為0~11。其中0表示1月,2表示3月,...,11表示12月。見前面的例子。
(6)getSeconds函數:返回日期的「秒」部分,值為0~59。見前面的例子。
(7)getTime函數:返回系統時間。
(8)getTimezoneOffset函數:返回此地區的時差(當地時間與GMT格林威治標准時間的地區時差),單位為分鍾。
(9)getYear函數:返回日期的「年」部分。返回值以1900年為基數,例如1999年為99。
(10)parse函數:返回從1970年1月1日零時整算起的毫秒數(當地時間)。
(11)setDate函數:設定日期的「日」部分,值為0~31。
(12)setHours函數:設定日期的「小時」部分,值為0~23。
(13)setMinutes函數:設定日期的「分鍾」部分,值為0~59。
(14)setMonth函數:設定日期的「月」部分,值為0~11。其中0表示1月,...,11表示12月。
(15)setSeconds函數:設定日期的「秒」部分,值為0~59。
(16)setTime函數:設定時間。時間數值為1970年1月1日零時整算起的毫秒數。
(17)setYear函數:設定日期的「年」部分。
(18)toGMTString函數:轉換日期成為字元串,為GMT格林威治標准時間。
(19)setLocaleString函數:轉換日期成為字元串,為當地時間。
(20)UTC函數:返回從1970年1月1日零時整算起的毫秒數,以GMT格林威治標准時間計算。

第四類:數學函數
函數有以下18個:
(1)abs函數:即Math.abs(以下同),返回一個數字的絕對值。
(2)acos函數:返回一個數字的反餘弦值,結果為0~π弧度(radians)。
(3)asin函數:返回一個數字的反正弦值,結果為-π/2~π/2弧度。
(4)atan函數:返回一個數字的反正切值,結果為-π/2~π/2弧度。
(5)atan2函數:返回一個坐標的極坐標角度值。
(6)ceil函數:返回一個數字的最小整數值(大於或等於)。
(7)cos函數:返回一個數字的餘弦值,結果為-1~1。
(8)exp函數:返回e(自然對數)的乘方值。
(9)floor函數:返回一個數字的最大整數值(小於或等於)。
(10)log函數:自然對數函數,返回一個數字的自然對數(e)值。
(11)max函數:返回兩個數的最大值。
(12)min函數:返回兩個數的最小值。
(13)pow函數:返回一個數字的乘方值。
(14)random函數:返回一個0~1的隨機數值。
(15)round函數:返回一個數字的四捨五入值,類型是整數。
(16)sin函數:返回一個數字的正弦值,結果為-1~1。
(17)sqrt函數:返回一個數字的平方根值。
(18)tan函數:返回一個數字的正切值。

第五類:字元串函數
包括以下20個函數:
(1)anchor函數:產生一個鏈接點(anchor)以作超級鏈接用。anchor函數設定<A NAME...>的鏈接點的名稱,另一個函數link設定<A HREF=...>的URL地址。
(2)big函數:將字體加到一號,與<BIG>...</BIG>標簽結果相同。
(3)blink函數:使字元串閃爍,與<BLINK>...</BLINK>標簽結果相同。
(4)bold函數:使字體加粗,與<B>...</B>標簽結果相同。
(5)charAt函數:返回字元串中指定的某個字元。
(6)fixed函數:將字體設定為固定寬度字體,與<TT>...</TT>標簽結果相同。
(7)fontcolor函數:設定字體顏色,與<FONT COLOR=color>標簽結果相同。
(8)fontsize函數:設定字體大小,與<FONT SIZE=n>標簽結果相同。
(9)indexOf函數:返回字元串中第一個查找到的下標index,從左邊開始查找。
(10)italics函數:使字體成為斜體字,與<I>...</I>標簽結果相同。
(11)lastIndexOf函數:返回字元串中第一個查找到的下標index,從右邊開始查找。
(12)length函數:返回字元串的長度。(不用帶括弧)
(13)link函數:產生一個超級鏈接,相當於設定<A HREF=...>的URL地址。
(14)small函數:將字體減小一號,與<SMALL>...</SMALL>標簽結果相同。
(15)strike函數:在文本的中間加一條橫線,與<STRIKE>...</STRIKE>標簽結果相同。
(16)sub函數:顯示字元串為下標字(subscript)。
(17)substring函數:返回字元串中指定的幾個字元。
(18)sup函數:顯示字元串為上標字(superscript)。
(19)toLowerCase函數:將字元串轉換為小寫。
(20)toUpperCase函數:將字元串轉換為大寫。

⑶ js中為什麼 isNaN 為 true

isNaN() 函數用於檢查其參數是否是非數字值。

比如

varx;
console.log(isNaN(x));

這個輸出就是true,因為x 沒有定義,是undefined,是「非數字值」

⑷ js中為什麼 isNaN 為 true



1、isNaN是Ecmascript提供的內置對象Global的一個函數,如下代碼即可以檢測

console.log(typeofisNaN)//列印function

2、function自然不是Number類型啦,嚴格來說,funcion屬於對象類型,在其他語言中function是單獨的一種數據類型,但是在js中Function類型是Object類型的派生類型。js中數據類型有如下:

字元串、數字、布爾、數組、對象(包括函數)、Null、Undefined

3、那麼得出的結論如下

//自定義的函數
varmyfc=function(){}
//全局函數,isNaN為ecma內置對象global的函數
vargloabfc=isNaN;

//都是函數(函數的類型被ecma劃分為對象類型)
console.log('myfc的數據類型為:'+typeofmyfc)
console.log('gloabfc的數據類型為:'+typeofgloabfc)

//1、js是一門弱語言類型,其中弱指的是弱數據類型,也就是說變數的類型一開始並不會確定,當為變數賦值時會自動判斷後隱式轉換它的所有類型類型並進行轉換。那麼它的變數、表達式等在參與運算時,即使類型不正確,也能通過隱式轉換來得到正確地類型。
//2、其他類型轉為布爾運算時,如果一個對象(函數也是對象)存在,那麼則為true。如果不存在,會拋出異常,不是你想像中的false,哈哈!
//3、isNaN是存在一個函數,所以為true
functionturnBoolean(param){
if(param){
console.log(param+'的轉換結果為:'+true)
}else{
console.log(param+'的轉換結果為:'+false)
}
}
turnBoolean(myfc)
turnBoolean(gloabfc)

//其他數據類型轉布爾值
turnBoolean(null)
turnBoolean(undefined)
turnBoolean(0)
turnBoolean('')
turnBoolean(1)
turnBoolean({})

其實總結就一句,因為isNaN函數(對象)存在,所以為true

javascript 判斷是不是數字

js有個函抄數 isNaN(val)//如果是數字則返回襲 false

使用時候
if(!isNaN(val)){
alert("是數字");
}else{
alert("不是數字");
}
js的驗證不安全 如果禁止瀏覽器JavaScript 很容易就跳過去驗證了

⑹ JS isNaN 問題

在javascript中,沒有對象、直接調用的函數,都是全局函數。說是全局,其實只不過是從屬於內置對象window的屬性或方法而已。也就是說,isNaN()等價於window.isNaN()。其它方法屬性也是類似,比如:

//不屬於任何對象的i
vari=5;

functiontest(){
alert(i);
}

test();//5

alert(i);//5

alert(window.i);//5

以上幾種alert出來的i都是5,說明window.i其實就是聲明的那個i。


isNaN是window對象的一個方法,它的作用是判斷參數是不是一個NaN。其實也就是看參數能不能轉化為數字,如果能,就返回false;不能轉化為數字,則返回true。例如:

isNaN('134');//false,字元串134可以轉化為數字

isNaN('1a34');//true,字元串1a34不能轉化為數字

isNaN('0x34');//false,字元串0x34能轉化為數字,十六進制

isNaN(true);//false,布爾型變數能轉化為數字,值為1


有一點要注意,在上面已經提到,布爾型值是能夠轉換成數字的,比如:

alert(true+1);//結果為2,因為true會轉化為數字1,而false會轉化為數字0


但是,如果用下面的代碼,就會得到NaN:

alert(parseInt(true));//NaN

parseInt和isNaN類似,都是window的一個方法,其作用是將參數強制轉化為整數,類似的還有window的另一個方法parseFloat,將參數強制轉化為浮點數。顯然這里parseInt(true)得到了一個NaN,但isNaN(true)得到的卻是false。


這兩者之間的差別,太具體的我就不清楚了。

閱讀全文

與isNaN在js中是什麼意思相關的資料

熱點內容
哪些app可以看愛上特種兵 瀏覽:236
linux查看資料庫目錄 瀏覽:519
pdf文件不識別 瀏覽:864
紅米4x數據線多少錢一個 瀏覽:757
adobe錯誤代碼 瀏覽:666
vba比對文件內容 瀏覽:357
電腦無線網卡密碼錯誤 瀏覽:590
java播放歌曲 瀏覽:299
蘋果越南的數據線多少錢 瀏覽:957
dp格式文件怎麼打開 瀏覽:832
蘋果連wifi好占網速 瀏覽:711
java線程池的使用例子 瀏覽:207
mac怎麼訪問文件夾 瀏覽:355
電腦d盤文件都在桌面上 瀏覽:311
一本書pdf大文件轉文字 瀏覽:97
linux查看文件換行符 瀏覽:293
加工中心怎麼操作電腦自動編程 瀏覽:355
怎麼整理說控盤數據 瀏覽:469
iphone7上市國家 瀏覽:111
蘋果六手機蘋果六s 瀏覽:419

友情鏈接