การคูณหมายเลขจุดลอยตัวใน JavaScript เป็นสิ่งที่น่าสนใจมาก
มีหลายวิธีในการทวีคูณตัวเลขจุดลอยตัว นี่คือวิธีแก้ปัญหาที่ฉันให้ว่าฉันคิดว่าดีสำหรับตัวเอง:
คัดลอกรหัสดังนี้: ฟังก์ชั่น fxf (f1, f2) {
f1 += '';
f2 += '';
var f1len = f1.split ('.') [1] .length,
f2len = f2.split ('.') [1] .length;
ถ้า (f1len) {
f1 = f1.replace ('.', '');
-
ถ้า (f2len) {
f2 = f2.replace ('.', '');
-
ส่งคืน f1 * f2 / math.pow (10, f1len + f2len);
-
ไอเดียพื้นฐาน
แนวคิดพื้นฐานคือการเปลี่ยนหมายเลขจุดลอยตัวทั้งหมดให้เป็นจำนวนเต็มจากนั้นหารด้วยกำลัง N-order ของ 10 ของค่าที่เท่ากัน n คือ (ผลรวมของความยาวต่อไปนี้ของตัวเลขจุดลอยตัวสองจุด)