JavaScript 內建的產生範圍的功能
在PHP 中,range() 函數用於產生指定範圍內的值的陣列界限。 JavaScript 沒有直接的等效項,但可以使用本機方法來實現類似的功能。
數字範圍
要建立數字範圍,您可以使用以下技術:
[...Array(5).keys()]; // [0, 1, 2, 3, 4]
此程式碼產生一個從0 到4 的值數組(包含)。
字元範圍
對於字元範圍,請使用以下方法:
String.fromCharCode(...[...Array('D'.charCodeAt(0) - 'A'.charCodeAt(0) + 1).keys()].map(i => i + 'A'.charCodeAt(0))); // "ABCD"
此程式碼產生字元 " A」至「D」。
迭代範圍
或者,您可以使用迭代來產生範圍:
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"
此程式碼迭代從0 到4 的數字並列印相應的字元。
創建範圍函數
創建可重用範圍函數,您可以執行以下操作:
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))) }
第三方庫
lodash.js 函式庫提供了一個_.range()函數,可以簡化範圍產生:
_.range(10); // [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
舊版瀏覽器相容性
對於不支援ES6的舊版瀏覽器,請使用下列程式碼:
Array.apply(null, Array(5)).map(function (_, i) {return i;}); // [0, 1, 2, 3, 4]
以上是如果沒有專用的「range()」函數,JavaScript 如何產生數字和字元範圍?的詳細內容。更多資訊請關注PHP中文網其他相關文章!