반응형
자바스크립트 값이 "정수"인지 확인하시겠습니까?
jQuery에서 변수가 정수인지 확인하려면 어떻게 해야 합니까?
예:
if (id == int) { // Do this }
저는 URL에서 아이디를 얻기 위해 다음과 같은 방법을 사용하고 있습니다.
var id = $.getURLParam("id");
하지만 변수가 정수인지 확인하고 싶습니다.
시도해 보기:
if(Math.floor(id) == id && $.isNumeric(id))
alert('yes its an int!');
$.isNumeric(id)
숫자인지 여부를 확인합니다.
Math.floor(id) == id
그러면 플로트가 아닌 정수 값인지 여부를 확인합니다.플로트 파싱이 int인 경우 원래 값과 다른 결과를 제공합니다.만약 int이면 둘 다 똑같을 것입니다.
여기에 다음과 같은 폴리필이 있습니다.Number
술어 함수:
"use strict";
Number.isNaN = Number.isNaN ||
n => n !== n; // only NaN
Number.isNumeric = Number.isNumeric ||
n => n === +n; // all numbers excluding NaN
Number.isFinite = Number.isFinite ||
n => n === +n // all numbers excluding NaN
&& n >= Number.MIN_VALUE // and -Infinity
&& n <= Number.MAX_VALUE; // and +Infinity
Number.isInteger = Number.isInteger ||
n => n === +n // all numbers excluding NaN
&& n >= Number.MIN_VALUE // and -Infinity
&& n <= Number.MAX_VALUE // and +Infinity
&& !(n % 1); // and non-whole numbers
Number.isSafeInteger = Number.isSafeInteger ||
n => n === +n // all numbers excluding NaN
&& n >= Number.MIN_SAFE_INTEGER // and small unsafe numbers
&& n <= Number.MAX_SAFE_INTEGER // and big unsafe numbers
&& !(n % 1); // and non-whole numbers
다음을 제외한 모든 주요 브라우저가 이러한 기능을 지원합니다.isNumeric
, 그것은 내가 지어낸 것이기 때문에 명세서에 나와 있지 않습니다.따라서 이 폴리필의 크기를 줄일 수 있습니다.
"use strict";
Number.isNumeric = Number.isNumeric ||
n => n === +n; // all numbers excluding NaN
또는 식에 줄을 긋기만 하면 됩니다.n === +n
수기로
jQuery의 IsNumeric 메서드를 사용합니다.
http://api.jquery.com/jQuery.isNumeric/
if ($.isNumeric(id)) {
//it's numeric
}
정정: 그것은 정수를 보장하지 않을 것입니다.이 경우:
if ( (id+"").match(/^\d+$/) ) {
//it's all digits
}
물론 jQuery를 사용하지는 않지만 솔루션이 작동하는 한 jQuery가 실제로 의무 사항은 아닌 것 같습니다.
언급URL : https://stackoverflow.com/questions/10270648/determine-if-javascript-value-is-an-integer
반응형
'programing' 카테고리의 다른 글
MySQL 쉼표 문자열을 임시 테이블로 분리 (0) | 2023.10.10 |
---|---|
jQuery tract vs prop? (0) | 2023.10.10 |
워드프레스 커스텀 숏코드 편집기 [백본JS & TinyMCE) (0) | 2023.10.10 |
변수 형식을 선행 0이 있는 4자리로 지정 (0) | 2023.10.10 |
mySQL에서 1, 10, 11, 12가 아닌 1, 2, 3을 주문하는 방법 (0) | 2023.10.10 |