https://www.vevb.com/article/154898.htm
ด้านล่างเราจะแนะนำวิธีการใช้งานของ JavaScript เพื่อรักษาวิธีการใช้ทศนิยมสองวิธี:
การปัดเศษ
ผลการประมวลผลต่อไปนี้จะเป็นสี่ทาง:
var num = 2.446242342; num = num.tofixed (2);
ไม่มีการเข้าสี่ทาง
ผลลัพธ์ของการประมวลผลต่อไปนี้จะไม่ไปสี่บ้าน:
ครั้งแรกก่อนอื่นนำจำนวนเต็มทศนิยม:
Math.floor (15.7784514000 * 100) / 100 // ผลการออกคือ 15.77
ประเภทที่สองใช้เป็นสตริงโดยใช้การจับคู่ปกติ:
หมายเลข (15.7784514000.TSTRING (). การจับคู่ (/^/d+(?: /./ D {0,2})?/) // ผลลัพธ์ผลลัพธ์คือ 15.77 และจำนวนเต็มไม่สามารถเขียนเป็น 10.0000หมายเหตุ: หากเป็นลบโปรดแปลงเป็นจำนวนบวกก่อนที่จะคำนวณและในที่สุดก็กลับไปเป็นตัวเลขลบ
JavaScript ยังคงรักษาตัวอย่างของตัวเลขทศนิยมสองตัว:
<script type = "text/javascript"> // ขอสงวนหมายเลขทศนิยมสองตัว // ฟังก์ชั่น: วางจุดลอยตัวระหว่างบ้านสี่หลังและห้าและหลังจากใช้จุดทศนิยม parsefloat (x); ถ้า (isnan (f)) {return;} f = math.round (x*100)/100; หลังจาก 2 2.00 ฟังก์ชั่น todecimal2 (x) {var f = parsefloat (x); TOSTRING (); += '0';} return s;} ฟังก์ชั่น fomatfloat (src, pos) {return math.round (src*math.pow (10, pos))/math.pow (10, pos);} // สี่ hinds และวูตง ("รักษาทศนิยม 2 ทศนิยม: + todecimal ( + todecimal (3.14159267); แจ้งเตือน (" แมนดาริน 2 หมายเลขทศนิยม: " + todecimal2 (3.14159267)) ("บังคับ 2 หลัก:" + todecimalal 2 (2 (3.15159267)); แจ้งเตือน ("สำรอง 2 หมายเลขทศนิยม: + fomatfloat (3.145559267, 2)); แจ้งเตือน (" สำรอง 1 หลัก: + fomatfloat (3.15159267, 1)); // ทศนิยมสองบิต: " + 1,000.003.Tofixed (2)); แจ้งเตือน (" สำรอง 1 หลัก: + 1,000.08.Tofixed (1)); การแจ้งเตือน ("สำรอง 1 หลักทศนิยม:" + 1,000.05.Tofixed (1)); ) ;; 3.1465.toexponential (2)); ); TOPRECISION (2));ใช้ JavaScript เพื่อใช้จุดทศนิยมแบบลอยตัวหลังจากสองจุด
1. ทิ้งส่วนทศนิยมและรักษาส่วนจำนวนเต็ม
Parseint (5/2)
2. ขึ้นไปข้างบนและเพิ่มทศนิยมลงในส่วนจำนวนเต็มเพื่อเพิ่ม 1
Math.Ceil (5/2)
3 บ้านสี่หลังและห้าคนเข้ามา
Math.Round (5/2)
4, ลง
Math.floor (5/2)
วิธีทางเลือก
1. วิธีที่โง่ที่สุด
คัดลอกรหัสรหัสดังนี้:
ฟังก์ชั่น get ()
-
var s = 22.127456 + "" ";
var str = s.substring (0, s.indexof (".") + 3);
การแจ้งเตือน (STR);
-
2. การแสดงออกที่ดีของการแสดงออกปกติ
คัดลอกรหัสรหัสดังนี้:
<script type = "text/javascript">
onload = function () {
var a = "23.456322";
var ใหม่;
var re = /( #+9 /.9> 2}) **)-2:
อีกครั้ง = A.replace (อีกครั้ง "$ 1");
การแจ้งเตือน (อีกครั้ง);
-
</script>
3. เขาฉลาดกว่า ...
คัดลอกรหัสรหัสดังนี้:
<script>
var num = 22.127456;
การแจ้งเตือน (Math.Round (NUM*100)/100);
</script>
4. เพื่อนที่จะใช้สิ่งใหม่ ๆ ... แต่คุณต้องใช้ IE5.5+เพื่อสนับสนุน
5. JS รักษาทศนิยม 2 ทศนิยม (บังคับ)
สำหรับจุดทศนิยมที่มากกว่า 2 บิตฟังก์ชั่นข้างต้นนั้นใช้ได้ แต่ถ้ามันน้อยกว่า 2 บิตเช่น: ChangetWodecimal (3.1) มันจะกลับมา 3.1 ::
คัดลอกรหัสรหัสดังนี้:
ฟังก์ชั่น changetWodecimal_f (x) {
var f_x = parsefloat (x);
if (isnan (f_x)) {
การแจ้งเตือน ('ฟังก์ชั่น: changetWodecimal-> พารามิเตอร์ e ข้อผิดพลาด');
กลับเท็จ;
-
var f_x = math.round (x * 100) / 100;
var s_x = f_x.toString ();
var pos_decimal = s_x.indexof ('.');
if (pos_decimal <0) {
pos_decimal = s_x.length;
s_x += '.';
-
ในขณะที่ (s_x.length <= pos_decimal + 2) {{
s_x += '0';
-
ส่งคืน s_x;
-
ฟังก์ชั่น: วางจุดลอยตัวและไปสี่บ้านและห้าใช้ 2 หลักหลังจากจุดทศนิยม
ฟังก์ชั่นนี้ส่งคืนการใช้รูปแบบของสตริง: changetWodecimal (3.1415926) ส่งคืน 3.14 changetWodecimal (3.1) ส่งคืน 3.10 3.10