Keupayaan Terbina Dalam JavaScript untuk Menjana Julat
Dalam PHP, fungsi julat() digunakan untuk menjana tatasusunan nilai dalam yang ditentukan sempadan. JavaScript tidak mempunyai persamaan langsung, tetapi kaedah asli boleh digunakan untuk mencapai kefungsian yang serupa.
Julat Angka
Untuk mencipta julat nombor, anda boleh menggunakan teknik berikut:
[...Array(5).keys()]; // [0, 1, 2, 3, 4]
Kod ini menjana tatasusunan nilai dari 0 hingga 4 (termasuk).
Julat Aksara
Untuk julat aksara, gunakan pendekatan berikut:
String.fromCharCode(...[...Array('D'.charCodeAt(0) - 'A'.charCodeAt(0) + 1).keys()].map(i => i + 'A'.charCodeAt(0))); // "ABCD"
Kod ini menjana aksara " A" hingga "D".
Diulang Julat
Sebagai alternatif, anda boleh menggunakan lelaran untuk menjana julat:
for (const x of Array(5).keys()) { console.log(x, String.fromCharCode('A'.charCodeAt(0) + x)); } // 0,"A" 1,"B" 2,"C" 3,"D" 4,"E"
Kod ini berulang pada nombor dari 0 hingga 4 dan mencetak aksara yang sepadan.
Mencipta Fungsi Julat
Untuk mencipta julat boleh guna semula fungsi, anda boleh melakukan perkara berikut:
function range(size, startAt = 0) { return [...Array(size).keys()].map(i => i + startAt); } function characterRange(startChar, endChar) { return String.fromCharCode(...range(endChar.charCodeAt(0) - startChar.charCodeAt(0), startChar.charCodeAt(0))) }
Perpustakaan Pihak Ketiga
Pustaka lodash.js menyediakan fungsi _.range() yang memudahkan penjanaan julat :
_.range(10); // [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
Pelayar Legasi Keserasian
Untuk penyemak imbas lama yang tidak menyokong ES6, gunakan kod berikut:
Array.apply(null, Array(5)).map(function (_, i) {return i;}); // [0, 1, 2, 3, 4]
Atas ialah kandungan terperinci Bagaimanakah JavaScript Boleh Menjana Julat Numerik dan Aksara Tanpa Fungsi `julat()` Terdedikasi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!