Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Pad Nombor dengan Sifar Utama dalam JavaScript?

Bagaimanakah Saya Boleh Pad Nombor dengan Sifar Utama dalam JavaScript?

Susan Sarandon
Susan Sarandonasal
2024-12-03 09:41:10423semak imbas

How Can I Pad Numbers with Leading Zeros in JavaScript?

Melapisi Nombor dengan Sifar Utama dalam JavaScript

Soalan Asal:

Bolehkah JavaScript digunakan untuk melapik nombor dengan sifar menuju ke lebar yang ditentukan? Contohnya, nombor seperti 9 harus dipadatkan kepada "0009" dengan tiga sifar pendahuluan.

Penyelesaian:

ES2017 Kemas kini:

  • String.prototype.padStart(): Kaedah terbina dalam ini membenarkan mengalas rentetan dengan bilangan aksara yang ditetapkan pada permulaan:

    n = 9;
    String(n).padStart(4, '0'); // '0009'

Legasi Pendekatan:

  • Fungsi Tersuai: Jika ciri ES2017 tidak tersedia, fungsi tersuai boleh dibuat untuk menambah nombor:

    function pad(n, width, z) {
    z = z || '0';
    n = n + '';
    return n.length >= width ? n : new Array(width - n.length + 1).join(z) + n;
    }
  • Fungsi ini mengambil tiga parameter: nombor untuk pad (n), lebar yang dikehendaki (lebar) dan aksara pelapik pilihan (z, lalai kepada '0').
  • Ia menukar nombor kepada rentetan dan menyemak panjangnya terhadap lebar yang dikehendaki.
  • Jika nombor itu lebih pendek daripada yang dikehendaki lebar, fungsi mencipta tatasusunan dengan bilangan elemen yang diperlukan, diisi dengan aksara padding.
  • Elemen tatasusunan dicantumkan menjadi rentetan dan ditambah kepada nombor untuk mencapai padding yang diingini.

Contoh Penggunaan:

pad(10, 4);      // 0010
pad(9, 4);       // 0009
pad(123, 4);     // 0123

pad(10, 4, '-'); // --10

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Pad Nombor dengan Sifar Utama dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn