JS 메서드를 사용하여 숫자인지 확인합니다. 1. isNaN() 함수를 사용하여 숫자인지 확인합니다. 2. 정규 표현식을 사용하여 숫자인지 확인합니다. ) 판단을 실현합니다.
이 튜토리얼의 운영 환경: Windows 7 시스템, JavaScript 버전 1.8.5, DELL G3 컴퓨터.
방법 1: isNaN() 함수 사용
isNaN() 함수는 js에 포함된 전역 함수입니다. isNaN() 함수는 매개변수가 숫자가 아닌 값인지 확인하는 데 사용됩니다.
값 x가 숫자가 아닌 특수 값 NaN인 경우(또는 그러한 값으로 변환될 수 있는 경우) 반환된 값은 true이고, 값 x가 다른 값인 경우 false가 반환됩니다.
isNaN()의 단점은 null, 공백 및 빈 문자열이 0
NaN: Not a Number <script> document.write(isNaN(123)); //数字 document.write(isNaN(-1.23)); //数字 document.write(isNaN(5-2)); //数字 document.write(isNaN(0)); //数字 document.write(isNaN("Hello")); //字符串 document.write(isNaN("2005/12/12")); //字符串 </script>
으로 처리된다는 것입니다. 출력:
false false false false true true
단점: isNaN()은 null, 공백 및 빈 문자열을 0으로 처리하므로 검사를 엄격하게 수행할 수 없습니다. .
그래서 이를 처리하고 typeof 연산자와 함께 사용하세요.
예:
// true:数值型的,false:非数值型 function myIsNaN(value) { document.write((typeof value === 'number' && !isNaN(value))+"<br>"); } myIsNaN(10); myIsNaN(null); myIsNaN( ); myIsNaN();
출력:
true false false false
방법 2: 정규 표현식
(1)을 사용하여 숫자(양수 및 음수 포함, 0 및 양수 및 음수 부동 소수점 숫자 포함)인지 확인합니다. ), true
/** * 校验只要是数字(包含正负整数,0以及正负浮点数)就返回true **/ function isNumber(val){ var regPos = /^[0-9]+.?[0-9]*/; //判断是否是数字。 if(regPos.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; } }
방법 3:parseFloat()
의 반환 값을 사용합니다.parseFloat() 함수는 문자열을 구문 분석하고 부동 소수점 숫자를 반환합니다.
이 함수는 문자열의 첫 번째 문자가 숫자인지 여부를 지정합니다. 그렇다면 문자열은 숫자 끝에 도달할 때까지 구문 분석되고 숫자는 문자열이 아닌 숫자로 반환됩니다.
사용법: 매개변수에 지정된 문자열을 부동 소수점 숫자로 구문 분석하여 반환합니다.
/** * 验证数据 是数字:返回true;不是数字:返回false **/ function Number(val) { if (parseFloat(val).toString() == "NaN") { return false; } else { return true; } } //isNaN(val)不能判断空串或一个空格 //如果是一个空串、空格或null,而isNaN是做为数字0进行处理的, //而parseInt与parseFloat是返回一个错误消息,这个isNaN检查不严密而导致的。
추천 학습: "js 기본 튜토리얼"
위 내용은 js에서 숫자인지 확인하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!