판단 방법: 1. isNaN() 함수를 사용하고 "isNaN(value)" 구문을 사용합니다. 값이 숫자인 경우 false를 반환합니다. 2. typeof의 반환 값인 "typeof(value)" 구문을 사용합니다. , 반환된 값이 "숫자"이면 숫자입니다. 3. 정규식을 사용하여 판단합니다.
이 튜토리얼의 운영 환경: Windows 7 시스템, JavaScript 버전 1.8.5, Dell G3 컴퓨터.
javascript는 지정된 값이 숫자인지 확인합니다.
방법 1: isNaN() 함수
isNaN() 함수는 값이 숫자가 아닌지(Not-a-Number) 여부를 확인할 수 있습니다. 이 함수는 값이 NaN과 같으면 true를 반환합니다. 그렇지 않으면 false를 반환합니다.
var c="hello"; //字符串 isNaN(c); //返回一个true; var c=10; //数字 isNaN(c);//返回一个false
isNaN()의 단점은 null, 공백 및 빈 문자열이 0으로 처리되므로 최적화가 필요하다는 것입니다
/** *判断是否是数字 * **/ function isRealNum(val){ // isNaN()函数 把空串 空格 以及NUll 按照0来处理 所以先去除, if(val === "" || val ==null){ return false; } if(!isNaN(val)){ //对于空数组和只有一个数值成员的数组或全是数字组成的字符串, //isNaN返回false,例如:'123'、[]、[2]、['123'],isNaN返回false, //所以如果不需要val包含这些特殊情况,则这个判断改写为if(!isNaN(val) && typeof val === 'number' ) return true; } else{ return false; } }
방법 2: typeof
의 반환 값을 사용합니다. 확인 방법: 반환된 경우 값이 Number 이면 숫자입니다. 반환 값이 String 등이면 숫자가 아닙니다. 아래와 같이:
var a=123; var b='123abc'; typeof(a) //Number typeof(b) //String
방법 3: 정규식을 사용합니다
(1). 숫자(양수 및 음수, 0, 양수 및 음수 부동 소수점 숫자 포함)인 경우 return true
/** * 校验只要是数字(包含正负整数,0以及正负浮点数)就返回true **/ function isNumber(val){ var regPos = /^\d+(\.\d+)?$/; //非负浮点数 var regNeg = /^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$/; //负浮点数 if(regPos.test(val) && regNeg.test(val)){ return true; }else{ return false; } }
(2), 양수와 음수를 확인하고 true를 반환합니다
/** * 校验正负正数就返回true **/ function isIntNum(val){ var regPos = / ^\d+$/; // 非负整数 var regNeg = /^\-[1-9][0-9]*$/; // 负整数 if(regPos.test(val) && regNeg.test(val)){ return true; }else{ return false; } }
[권장 학습: javascript 고급 튜토리얼]
위 내용은 자바스크립트에서 지정된 값이 숫자인지 확인하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!