JavaScript如何判斷input數(shù)據(jù)類(lèi)型
這篇文章主要介紹了JavaScript如何判斷input數(shù)據(jù)類(lèi)型,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
在HTML中接收用戶(hù)輸入信息一般都會(huì)用到<input/>。我今天本來(lái)想實(shí)現(xiàn)一個(gè)功能:由用戶(hù)在input中輸入自己的年齡,然后根據(jù)不同的年齡段彈出不同的信息,為了讓程序更加嚴(yán)謹(jǐn),我得判斷從input中獲取到的值必須是數(shù)字(這個(gè)問(wèn)題其實(shí)可以直接限制input的輸入內(nèi)容為數(shù)字,在這里我想要實(shí)現(xiàn)通過(guò)javascript判斷input里的值是否是數(shù)字)?! ?/p>
試過(guò)很多種方法發(fā)現(xiàn)都不行,因?yàn)椴还苡脩?hù)在input中輸入了什么類(lèi)型的數(shù)據(jù),我通過(guò)javaScript獲取到這個(gè)值后都會(huì)變成字符,所以我們通常用來(lái)判斷數(shù)據(jù)類(lèi)型的幾個(gè)方法(Number(a)、typeof、instanceof)在這里都是沒(méi)有用的,用這幾個(gè)方法進(jìn)行判斷得到的結(jié)果一定是false。
試了很多種方法后我發(fā)現(xiàn)用正則表達(dá)式進(jìn)行判斷很方便,在這里了記錄一下:
源代碼:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script defer>
function test(num) {
// 判斷一串字符是不是全部是數(shù)字
var rex = /^[0-9]+$/;//正則表達(dá)式
var flag = rex.test(num);//通過(guò)表達(dá)式進(jìn)行匹配
if (flag) {
alert("數(shù)據(jù)類(lèi)型合法");
} else {
alert("數(shù)據(jù)類(lèi)型不合法");
}
}
</script>
</head>
<body>
<input type="text" id="in">
<br>
<button onclick="test(document.getElementById('in').value)">進(jìn)行數(shù)據(jù)判斷</button>
</body>
</html>
先獲取input中的值,再用正則表達(dá)式進(jìn)行判斷返回一個(gè)布爾值
可以看效果是實(shí)現(xiàn)了的:

額外啰嗦一點(diǎn)
如果我們需要將輸入框中的字符轉(zhuǎn)換成數(shù)字運(yùn)算也可以使用正則去實(shí)現(xiàn),只要在原來(lái)的代碼中加上下面紅色背景那段代碼就可以將字符轉(zhuǎn)換成數(shù)字了
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script defer>
function test(num) {
// 判斷一串字符是不是全部是數(shù)字
var rex = /^[0-9]+$/;//正則表達(dá)式
var flag = rex.test(num);//通過(guò)表達(dá)式進(jìn)r行匹配
var fin = num.match(rex);
if (flag) {
alert(fin+":數(shù)據(jù)類(lèi)型合法");
} else {
alert("數(shù)據(jù)類(lèi)型不合法");
}
}
</script>
</head>
<body>
<input type="text" id="in">
<br>
<button onclick="test(document.getElementById('in').value)">進(jìn)行數(shù)據(jù)判斷</button>
</body>
</html>
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- js 判斷數(shù)據(jù)類(lèi)型的幾種方法
- js 判斷各種數(shù)據(jù)類(lèi)型的簡(jiǎn)單方法(推薦)
- Javascript如何判斷數(shù)據(jù)類(lèi)型和數(shù)組類(lèi)型
- js的各種數(shù)據(jù)類(lèi)型判斷的介紹
- JavaScript中判斷數(shù)據(jù)類(lèi)型的方法總結(jié)
- 淺談js數(shù)據(jù)類(lèi)型判斷與數(shù)組判斷
- JS數(shù)據(jù)類(lèi)型判斷的幾種常用方法
- 判斷js數(shù)據(jù)類(lèi)型的函數(shù)實(shí)例詳解
- JS中數(shù)據(jù)類(lèi)型的正確判斷方法實(shí)例
相關(guān)文章
Javascript實(shí)現(xiàn)圖片懶加載的示例代碼
最近公司和第三方材料供應(yīng)商對(duì)接開(kāi)發(fā)了物資集采平臺(tái),其中有個(gè)功能需求需要展示數(shù)百?gòu)埐牧闲畔D片,有時(shí)頁(yè)面會(huì)出現(xiàn)卡頓的情況,并使用了圖片懶加載的方式進(jìn)行了優(yōu)化,下面把方法分享給大家一起學(xué)習(xí),感興趣的小伙伴跟著小編一起來(lái)看看吧2024-12-12
swiper實(shí)現(xiàn)導(dǎo)航滾動(dòng)效果
這篇文章主要為大家詳細(xì)介紹了swiper實(shí)現(xiàn)導(dǎo)航滾動(dòng)效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-12-12
bootstrap table實(shí)現(xiàn)橫向合并與縱向合并
這篇文章主要為大家詳細(xì)介紹了bootstrap table實(shí)現(xiàn)橫向合并與縱向合并,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-07-07
javascript打印html內(nèi)容功能的方法示例
這篇文章主要介紹了javascript打印html內(nèi)容的小示例,大家參考使用2013-11-11
JavaScript實(shí)現(xiàn)查找字符串中第一個(gè)不重復(fù)的字符
這篇文章主要介紹了JavaScript實(shí)現(xiàn)查找字符串中第一個(gè)不重復(fù)的字符,需要的朋友可以參考下2014-12-12

