ไวยากรณ์สำหรับการสร้างวัตถุตัวเลข:
การคัดลอกรหัสมีดังนี้:
var mynum = หมายเลขใหม่ (ค่า);
var mynum = number (value);
เมื่อหมายเลข () และตัวดำเนินการใหม่ใช้ร่วมกันเป็นตัวสร้างมันจะส่งคืนวัตถุหมายเลขที่สร้างขึ้นใหม่ หากคุณไม่ได้ใช้ตัวดำเนินการใหม่หมายเลขโทร () เป็นฟังก์ชั่นมันจะแปลงพารามิเตอร์ของตัวเองเป็นค่าดั้งเดิมและส่งคืนค่านี้ (ส่งคืน NAN หากการแปลงล้มเหลว)
max_value
คุณสมบัติ MAX_VALUE เป็นจำนวนมากที่สุดที่สามารถแสดงใน JavaScript การประมาณของมันคือ 1.7976931348623157 x 10308 จำนวนลบที่ใหญ่ที่สุดคือ -max_value
จำนวนที่ใหญ่กว่า max_value นั้นไม่มีที่สิ้นสุด max_value เป็นคุณสมบัติคงที่ดังนั้นวิธีการโทรควรเป็น number.max_value
การคัดลอกรหัสมีดังนี้:
console.log (number.max_value) //1.7976931348623157E+308
min_value
คุณสมบัติ min_value เป็นตัวเลขที่เล็กที่สุดที่สามารถแสดงใน JavaScript (เกือบ 0 แต่ไม่ใช่ลบ) การประมาณของมันคือ 5 x 10-324
ตัวเลขทั้งหมดที่เล็กกว่า min_value จะถูกแปลงเป็น 0
min_value เป็นคุณสมบัติคงที่ดังนั้นวิธีการโทรควรเป็น number.min_value
น่าน
แอตทริบิวต์ NAN เป็นค่าพิเศษที่แสดงถึงค่าที่ไม่ใช่ตัวเลข คุณสมบัตินี้ใช้เพื่อระบุว่าค่าไม่ใช่ตัวเลข วัตถุตัวเลขสามารถตั้งค่าเป็นค่านี้เพื่อระบุว่าไม่ใช่ค่าตัวเลข
คุณสามารถใช้ฟังก์ชั่นทั่วโลก isnan () เพื่อตรวจสอบว่าค่าเป็นค่า NAN หรือไม่
number.nan เป็นค่าพิเศษที่บ่งชี้ว่าผลลัพธ์ของการดำเนินการทางคณิตศาสตร์บางอย่าง (เช่นการค้นหาสแควร์รูทของจำนวนลบ) ไม่ใช่ตัวเลข วิธีการ parseint () และ parsefloat () ส่งคืนค่านี้เมื่อสตริงที่ระบุไม่สามารถแยกวิเคราะห์ได้ สำหรับฟังก์ชั่นบางอย่างที่ส่งคืนตัวเลขที่สำคัญในกรณีทั่วไปวิธีนี้ยังสามารถใช้โดยใช้ number.nan เพื่อแสดงสถานการณ์ข้อผิดพลาด
JavaScript Outputs Number.nan เป็น NAN โปรดทราบว่าผลลัพธ์ของการเปรียบเทียบ NAN กับค่าอื่น ๆ นั้นไม่เท่ากันเสมอรวมถึงตัวมันเอง ดังนั้นจึงไม่สามารถเปรียบเทียบกับ number.nan เพื่อตรวจสอบว่าค่าเป็นตัวเลข แต่สามารถเรียกได้ว่า isnan () เพื่อเปรียบเทียบเท่านั้น
หมายเหตุ: NAN ตัวแปรส่วนกลางเหมือนกับ number.nan NAN เป็นทรัพย์สินที่ไม่สามารถปรับเปลี่ยนได้และไม่สามารถแก้ไขได้
การคัดลอกรหัสมีดังนี้:
console.log (parseint ("ABC")); // น่าน
console.log (nan === nan); //เท็จ
console.log (number.nan === nan); //เท็จ
console.log (isnan (nan)); //จริง
console.log (isnan (number.nan)); //จริง
negative_infinity
แอตทริบิวต์ negative_infinity ระบุค่าน้อยกว่า -number.max_value ค่านี้แสดงถึงอนันต์เชิงลบ
JavaScript ใช้ -Infinity เมื่อแสดง negative_infinity พฤติกรรมเลขคณิตของค่านี้คล้ายกับอินฟินิตี้มาก ตัวอย่างเช่นผลลัพธ์ของการคูณอินฟินิตี้ยังคงไม่มีที่สิ้นสุดและผลลัพธ์ของการหารอินฟินิตี้ตามจำนวนใด ๆ เป็นศูนย์
-infinity และ number.negative_infinity เท่ากัน
การคัดลอกรหัสมีดังนี้:
var x = (-number.max_value) * 2;
var y = number.negative_infinity;
console.log (x); //-อินฟินิตี้
console.log (y); //-อินฟินิตี้
console.log (x === y); //จริง
positive_infinity
แอตทริบิวต์ positive_infinity ระบุค่าที่มากกว่า number.max_value ค่านี้แสดงถึงอินฟินิตี้เชิงบวก
JavaScript ใช้อินฟินิตี้เมื่อแสดง positive_infinity พฤติกรรมเลขคณิตของค่านี้คล้ายกับอินฟินิตี้มาก ตัวอย่างเช่นผลลัพธ์ของการคูณอินฟินิตี้ยังคงไม่มีที่สิ้นสุดและผลลัพธ์ของการหารอินฟินิตี้ตามจำนวนใด ๆ เป็นศูนย์
อินฟินิตี้และ number.positive_infinity เท่ากัน
วิธี isfinite () สามารถกำหนดได้ว่าพารามิเตอร์เป็นตัวเลข จำกัด หรือไม่
การคัดลอกรหัสมีดังนี้:
var x = number.negative_infinity;
var y = number.positive_infinity;
var z = อินฟินิตี้;
var a = "abc";
var b = 123;
console.log (isfinite (x)); //เท็จ
console.log (isfinite (y)); //เท็จ
console.log (isfinite (z)); //เท็จ
console.log (isfinite (a)); //เท็จ
console.log (isfinite (b)); //จริง
TOSTRING ()
เมธอด toString () แปลงวัตถุตัวเลขเป็นสตริงและส่งคืนผลลัพธ์
numberObject.toString (radix)
Radix พารามิเตอร์เป็นตัวเลือก ระบุ cardinality ของจำนวนทำให้จำนวนเต็มระหว่าง 2 และ 36 หากมีการละเว้นพารามิเตอร์นี้ให้ใช้ cardinality 10 ขอแนะนำให้ใช้พารามิเตอร์นี้เสมอเพื่อป้องกันความเข้าใจผิด ตัวอย่างเช่นเมื่อ Radix คือ 2 หมายเลข NumberObject จะถูกแปลงเป็นสตริงที่แสดงด้วยค่าไบนารี
ข้อยกเว้น TypeError จะถูกโยนลงเมื่อวัตถุเรียกวิธีการไม่ได้เป็นตัวเลข
การคัดลอกรหัสมีดังนี้:
var a = 100;
console.log (a.toString ()); // 100
console.log (A.ToString (10)); // 100
console.log (A.ToString (2)); // 1100100
console.log (A.ToString (8)); // 144
console.log (A.ToString (16)); // 64
Tolocalestring ()
เมธอด tolocalestring () แปลงวัตถุตัวเลขเป็นสตริงในรูปแบบท้องถิ่น
การแสดงสตริงของตัวเลขที่กำหนดโดยการใช้งานจะถูกจัดรูปแบบตามข้อกำหนดของท้องถิ่นอาจส่งผลกระทบต่อเครื่องหมายวรรคตอนที่ใช้โดยจุดทศนิยมหรือตัวคั่นอนุภาคที่นับพัน
ข้อยกเว้น TypeError จะถูกโยนลงเมื่อวัตถุเรียกวิธีการไม่ได้เป็นตัวเลข
การคัดลอกรหัสมีดังนี้:
var a = 123456;
console.log (a.tolocalestring ()); // 123,456
console.log (a.tolocalestring ("zh-hans-cn-u-nu-hanidec")); // หนึ่ง, สอง, สาม, สี่, ห้า, หก
สำหรับพารามิเตอร์เพิ่มเติมโปรดดูที่: MDN
tofixed ()
เมธอด tofixed () จะปัดหมายเลขเป็นตัวเลขที่มีหมายเลขทศนิยมที่ระบุ
numberObject.tofixed (num)
จำเป็นต้องมีพารามิเตอร์ NUM จำนวนตัวเลขที่ระบุในทศนิยมคือค่าระหว่าง 0 ถึง 20 รวมถึง 0 และ 20 และการใช้งานบางอย่างสามารถรองรับช่วงของค่าที่ใหญ่กว่า หากมีการละเว้นพารามิเตอร์นี้ 0 จะถูกแทนที่
ส่งคืนการแสดงสตริงของ NumberObject โดยไม่มีการนับแบบทวีคูณมีตัวเลขจำนวนคงที่หลังจากจุดทศนิยม หากจำเป็นจำนวนจะถูกปัดเศษและสามารถเติมด้วย 0 เพื่อให้ถึงความยาวที่ระบุ หาก NUM มากกว่า LE+21 วิธีการเรียกใช้ numberObject.toString () และส่งคืนสตริงที่แสดงโดยการนับแบบเอ็กซ์โปเนนเชียล
Rangeerror ข้อยกเว้นจะถูกโยนลงเมื่อ NUM มีขนาดเล็กเกินไปหรือใหญ่เกินไป ค่าระหว่าง 0 ถึง 20 จะไม่ยกข้อยกเว้นนี้ การใช้งานบางอย่างสนับสนุนค่าในช่วงที่ใหญ่กว่าหรือเล็กกว่า ข้อยกเว้น TypeError จะถูกโยนลงเมื่อวัตถุเรียกวิธีการไม่ได้เป็นตัวเลข
การคัดลอกรหัสมีดังนี้:
var n = 12345.6789;
console.log (n.tofixed ()); // 12346
console.log (n.tofixed (2)); //12345.68
console.log (n.tofixed (6)); //12345.678900
console.log ((1.23e+20) .tofixed (2)); // 123000000000000000000000000000000000000000000000000000000000000000000000000000
console.log ((1.23e-10) .tofixed (2)); //0.00
หมายเหตุ: เนื่องจากการประมวลผลของหมายเลขจุดลอยตัวผลลัพธ์ที่แสดงโดยวิธี tofixed () ไม่ได้เรียกว่า "การปัดเศษ" หรือ "ปัดเศษหกเป็นห้าคู่" แต่การแสดงของการปัดเศษสี่, หกถึงห้าและห้าทำให้เกิดความสับสนมาก
การคัดลอกรหัสมีดังนี้:
// ในโครเมี่ยม
console.log ((0.035) .tofixed (2)); //0.04
console.log ((0.045) .tofixed (2)); //0.04
ขอแนะนำให้เขียนวิธีการของคุณเองเพื่อแทนที่พฤติกรรมเริ่มต้นของ tofixed () คุณสามารถอ้างถึงการสนทนาใน SO:
การคัดลอกรหัสมีดังนี้:
number.prototype.tofixed = function (len) {
var temp = math.pow (10, len);
var s = math.ceil (this * temp)
ส่งคืน s/temp;
-
console.log ((0.035) .tofixed (2)); //0.04
console.log ((0.045) .tofixed (2)); //0.05
toexponential ()
วิธี toexponential () แปลงค่าของวัตถุเป็นวิธีการนับแบบเอ็กซ์โปเนนเชียล
numberObject.toexponential (NUM)
พารามิเตอร์ NUM เป็นทางเลือก จำนวนตำแหน่งทศนิยมในวิธีการนับแบบเอ็กซ์โปเนนเชียลคือค่าระหว่าง 0 ถึง 20 รวมถึง 0 และ 20 และการใช้งานบางอย่างสามารถรองรับช่วงของค่าที่ใหญ่กว่า หากมีการละเว้นพารามิเตอร์นี้ให้ใช้ตัวเลขมากที่สุดเท่าที่จะเป็นไปได้
ส่งคืนการแสดงสตริงของ NumberObject โดยใช้วิธีการนับแบบเอ็กซ์โปเนนเชียลนั่นคือมีตัวเลขก่อนจุดทศนิยมและตัวเลขตัวเลขหลังจากจุดทศนิยม ส่วนทศนิยมของจำนวนจะถูกปัดเศษและเต็มไปด้วย 0 หากจำเป็นเพื่อให้ถึงความยาวที่ระบุ
Rangeerror ข้อยกเว้นจะถูกโยนลงเมื่อ NUM มีขนาดเล็กเกินไปหรือใหญ่เกินไป ค่าระหว่าง 0 ถึง 20 จะไม่ยกข้อยกเว้นนี้ การใช้งานบางอย่างสนับสนุนค่าในช่วงที่ใหญ่กว่าหรือเล็กกว่า ข้อยกเว้น TypeError จะถูกโยนลงเมื่อวัตถุเรียกวิธีการไม่ได้เป็นตัวเลข
การคัดลอกรหัสมีดังนี้:
var num = 10,000.1234;
console.log (num.toexponential ()); //1.00001234E+4
console.log (num.toexponential (2)); //1.00E+4
console.log (num.toexponential (10)); //1.0000123400E+4
TOPRECISION ()
เมธอด TOPREACISION () จะจัดรูปแบบค่าเป็นสตริงในรูปแบบของหมายเลขทศนิยม
numberObject.toprecision (NUM)
พารามิเตอร์ NUM เป็นทางเลือก ใช้เพื่อควบคุมความถูกต้องของตัวเลข พารามิเตอร์นี้เป็นค่าระหว่าง 1 และ 21 (และรวม 1 และ 21) หากมีการละเว้นพารามิเตอร์นี้เมธอด toString () เรียกว่าแทนที่จะแปลงตัวเลขเป็นค่าทศนิยม
การคัดลอกรหัสมีดังนี้:
var num = 10,000.1234;
console.log (num.toprecision ()); //10000.1234
console.log (num.toprecision (2)); //1.0E+4
console.log (num.toprecision (10)); //10000.12340