JavaScript 中的反轉帶有扭曲的字串
我們需要編寫一個 JavaScript 函式,它接收一個字串 str 作為第一個引數,並接收一個整數 num 作為第二個引數。
我們的函式應該從字串的開頭起,對每 2 * num 個字元反轉前 num 個字元。如果剩餘的字元少於 num 個,則必須反轉所有字元。
如果剩餘的字元少於 2 * num 但大於或等於 num 個,則必須反轉前 num 個字元,並將其他字元保持原樣。
例如 -
如果輸入字串和數字為 -
const str = 'klmnopq'; const num = 2;
則輸出應為 -
const output = 'lkmnpoq';
我們在那裡反轉了前 4 個字元中的前 2 個,然後繼續查詢,我們只剩下 3 個字元,因此我們反轉了前 3 個字元中的前 2 個。
示例
此程式碼將為 -
const str = 'klmnopq'; const num = 2; const reverseString = (str = '', num = 1) => { if(str.length < num){ return str.split("").reverse().join(""); }; let res = ""; for(let i = 0; i < str.length; i += (2*num)){ res += str.split("").slice(i, i+num).reverse().join(""); res += str.slice(i+num, i+2*num); }; return res; }; console.log(reverseString(str, num));
輸出
控制檯中的輸出將為 -
lkmnpoq
廣告