Menambah rentetan pada panjang yang diingini adalah keperluan biasa dalam pengaturcaraan, terutamanya semasa memformat data untuk paparan atau storan. JavaScript menyediakan beberapa pilihan untuk mencapai ini dengan pelbagai tahap kerumitan dan keserasian merentas platform JavaScript yang berbeza.
Pada 2017 , ECMAScript 2017 (ES8) memperkenalkan String.padStart() dan Kaedah String.padEnd() khusus untuk mengalas rentetan dengan ruang atau aksara lain. Kaedah ini disokong dalam pelayar moden dan versi Node.js.
"Jonas".padStart(10); // Rentetan pad lalai ialah ruang
"42".padStart(6, "0"); // Pad dengan "0"
"".padStart(8, "-/|"); // menghasilkan '-/|-/|'
Untuk versi JavaScript yang lebih lama, String.padStart() boleh dilaksanakan menggunakan polyfill.
Sebelumnya ES8, beberapa kaedah alternatif telah digunakan untuk mengikat rentetan. Satu pendekatan biasa adalah untuk menggabungkan rentetan dengan rentetan padding dan gunakan slice() untuk mengekstrak bahagian yang diingini:
<br>var n = 123</p> <p>String("00000 " n).slice(-5); // returns 00123<br>("00000" n).slice(-5); // returns 00123<br>(" " n).slice(-5); // mengembalikan " 123" (dengan dua ruang)<br>
Teknik lain ialah mencipta sambungan padding rentetan:
<br>String. prototype.paddingLeft = fungsi (paddingValue) {<br> return String(paddingValue this).slice(-paddingValue.length);<br>};<br>
Pelanjutan ini boleh digunakan seperti berikut:
fungsi getFormattedTime(tarikh) {
var hours = date.getHours();
var minutes = date.getMinutes();
hours = hours.toString().paddingLeft("00");
minutes = minutes.toString().paddingLeft("00");
kembali "{0}:{1}".format(jam, minit);
};
String.prototype.format = function () {
var args = arguments; return this.replace(/{(\d+)}/g, function (match, number) { return typeof args[number] != 'undefined' ? args[number] : match; });
};
Ini menunjukkan pelapik rentetan menggunakan kaedah prototaip rentetan yang diubah suai.
Atas ialah kandungan terperinci Bagaimanakah String Pad JavaScript kepada Panjang Tertentu?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!