Membundarkan kepada Dua Tempat Perpuluhan Hanya Apabila Perlu dalam JavaScript
Apabila bekerja dengan nombor titik terapung dalam JavaScript, selalunya perlu untuk membundarkannya kepada bilangan tempat perpuluhan tertentu. Walau bagaimanapun, adalah penting juga untuk mengelakkan pembundaran yang tidak perlu yang boleh menyebabkan ralat pembundaran.
Pernyataan Masalah:
Bagaimanakah kita boleh membundarkan nombor kepada paling banyak dua tempat perpuluhan, tetapi hanya jika perlu berbuat demikian? Contohnya, jika kami mempunyai nombor input berikut:
Kami mahukan yang berikut output:
Penyelesaian:
Menggunakan Math.round()
Penyelesaian paling mudah ialah menggunakan fungsi Math.round() untuk membundarkan nombor:
Math.round(num * 100) / 100
Ini mendarabkan nombor dengan 100 untuk membundarkan dengan berkesan ia kepada dua tempat perpuluhan, dan kemudian bahagikan dengan 100 untuk memulihkan nilai asal.
Memastikan Tepat Membundarkan
Walau bagaimanapun, kaedah ini mungkin tidak selalu menghasilkan keputusan yang tepat. Sebagai contoh, nombor 1.005 akan dibundarkan kepada 1.00 menggunakan pendekatan di atas. Untuk memastikan pembundaran yang lebih tepat, kita boleh menggunakan pemalar Nombor. EPSILON:
Math.round((num + Number.EPSILON) * 100) / 100
Ini menambah jumlah yang kecil pada nombor sebelum dibundarkan, yang membantu mengelakkan ralat pembundaran.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membundarkan Nombor JavaScript kepada Dua Tempat Perpuluhan Hanya Apabila Diperlukan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!