Sifar Utama dalam Nombor JavaScript
Dalam JavaScript, adakah terdapat cara untuk menambah sifar pendahuluan kepada nombor secara automatik untuk mencapai panjang rentetan tertentu? Contohnya, menukar 5 kepada "05" dengan panjang sasaran 2?
Penyelesaian:
Penukaran kepada Rentetan
Oleh kerana nombor sememangnya tidak mempunyai sifar pendahuluan, kita perlu menukar nombor itu kepada rentetan terlebih dahulu. Berikut ialah contoh fungsi:
function pad(num, size) { num = num.toString(); while (num.length < size) { num = "0" + num; } return num; }
Contoh:
pad(5, 2); // "05"
Pendekatan Alternatif
Jika bilangan maksimum sifar pendahuluan diketahui, kaedah alternatif boleh lebih cekap:
function pad(num, size) { var s = "000000000" + num; return s.substr(s.length - size); }
Nombor Negatif
Mengendalikan nombor negatif memerlukan menanggalkan tanda negatif dan menambahnya semula selepas pelapik:
function padWithSign(num, size) { if (num < 0) { num = -num; return "-" + pad(num, size); } else { return pad(num, size); } }
Atas ialah kandungan terperinci Bagaimana untuk Menambahkan Sifar Utama kepada Nombor dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!