มีสองวิธีในการตัดสินจำนวนเต็ม: การตัดสินปกติและการตัดสินคำต่อคำ
เนื่องจากการตัดสินคำต่อคำไม่มีประสิทธิภาพเกินไปฉันจะไม่อธิบายที่นี่ ผู้ชมที่สนใจสามารถ Google ได้เอง
1. การตัดสินปกติ
การคัดลอกรหัสมีดังนี้:
var r =/^/+? [1-9] [0-9]*$/; // จำนวนเต็มบวก
console.log (r.test (1.23));
การทดสอบประสิทธิผล:
http://jsfiddle.net/wzsdp9lc/
รายการคุณสมบัติขยาย
การคัดลอกรหัสมีดังนี้:
"^// d + $" // จำนวนเต็มที่ไม่ใช่ลบ (จำนวนเต็มบวก + 0)
"^[0-9]*[1-9] [0-9]*$" // จำนวนเต็มบวก
"^((-// d+) | (0+)) $" // ไม่ใช่จำนวนเต็มบวก (จำนวนเต็มลบ+0)
"^-[0-9]*[1-9] [0-9]*$" // integer ลบ
"^-? // d+$" // จำนวนเต็ม
"^// d+(//.// d+)? $" // หมายเลขจุดลอยตัวที่ไม่ใช่เชิงลบ (หมายเลขจุดลอยตัวบวก+0)
"^(([[0-9]+//. [0-9]*[1-9] [0-9]*) | ([0-9]*[1-9] [0-9]*// [0-9]+) | ([0-9]*[1-9] [0-9]*)
"^((-// d+(//./// d+)?) | (0+(//. 0+)?)) $" // หมายเลขจุดลอยตัวที่ไม่ใช่เชิงบวก
"^(-((([0-9]+//. [0-9]*[1-9] [0-9]*) | ([0-9]*[1-9] [0-9]*//. [0-9]+) | ([0-9]*[1-9] [0-9]*))
"^(-? // d+) (//./// d+)? $" // หมายเลขจุดลอยตัว
2. การตัดสินปัดเศษ
แนวคิดของวิธีนี้คือการพิจารณาว่ามันเท่ากับค่าดั้งเดิมหลังจากการปัดเศษ
การคัดลอกรหัสมีดังนี้:
var num = 1.23;
if (parseint (num)! = num) {
console.log (num+"ไม่ใช่ inteteger");
-
อื่น{
console.log (num+"เป็นจำนวนเต็ม");
-
การทดสอบประสิทธิผล
http://jsfiddle.net/euvn0l1g/1/