將字串分割成子字串 - JavaScript
我們需要編寫一個 JavaScript 函式,該函式接受一個字串和一個數字 n 作為兩個引數(數字應滿足能精確除以字串長度),並且我們必須返回一個包含 n 個相等長度的字串的陣列。
例如 -
如果字串為 "how" 並且數字為 2,則我們的輸出應為 -
["h", "o", "w"];
此處,每一個子字串恰好包含 -
(length of array/n) characters
並且透過交替取字串的第一個和最後一個字母來形成每一個子字串。
示例
以下是程式碼 -
const str = "how"; const num = 3; const segregate = (str, n) => { if(str.length % n !== 0){ return false; } const len = str.length / n; const strArray = str.split(""); const arr = []; let i = 0, char; while(strArray.length){ if(i % 2 === 0){ char = strArray.shift(); }else{ char = strArray.pop(); }; if(i % len === 0){ arr[i / len] = char; }else{ arr[Math.floor(i / len)] += char; }; i++; }; return arr; }; console.log(segregate(str, num));
輸出
這將在控制檯輸出以下內容 -
[ 'h', 'w', 'o' ]
廣告