Rumah > Artikel > hujung hadapan web > Mengekodkan rentetan berangka ke dalam rentetan 0s dan 1s dalam JavaScript
Kita perlu menulis fungsi JavaScript yang menerima rentetan yang mewakili nombor perpuluhan.
Fungsi kita hendaklah menukar/mengekod nombor perpuluhan ini kepada binari berdasarkan peraturan berikut.
Untuk setiap digit d dalam n
Akhir sekali, kami menggabungkan semua keputusan nombor n yang diperolehi.
Jadi pengekodan 2 ialah 0110 dan 3 ialah 0111
Berikut ialah kod -
const str = '77338855'; const encodeNumString = (str = '') => { const buildarray = (string = '') => { let n = string.split(''), res = ''; n.forEach(x => { let num = Number(x).toString(2); num = '0'.repeat(num.length -1) + '1' + num; res += num; }); return res; } const arr = []; let res = ""; for (let i = 0; i < 10; i++){ arr.push(buildarray(String(i))); }; while (str.length){ for (let i = 0; i < 10; i++) { if (str.startsWith(arr[i])) { res += String(i); str = str.slice(arr[i].length); break; } } } return res; }; console.log(encodeNumString(str));
Berikut ialah output konsol -
rreeeAtas ialah kandungan terperinci Mengekodkan rentetan berangka ke dalam rentetan 0s dan 1s dalam JavaScript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!