เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับสตริงและตัวเลข n เป็นสองอาร์กิวเมนต์ (ตัวเลขควรเป็นแบบที่แบ่งความยาวของสตริงได้อย่างแม่นยำ) และเราต้องคืนค่าอาร์เรย์ของ n สตริงที่มีความยาวเท่ากัน
ตัวอย่างเช่น −
If the string is "helloo" and the number is 3 Our output should be: ["ho", "eo", "ll"]
ที่นี่ แต่ละสตริงย่อยมีอักขระ (ความยาวของอาร์เรย์/n) ทุกประการ และแต่ละสตริงย่อยจะมีรูปแบบโดยใช้ตัวอักษรตัวแรกและตัวสุดท้ายของสตริงที่สอดคล้องกันหรือ
มาเขียนโค้ดสำหรับฟังก์ชันนี้กัน −
ตัวอย่าง
const str = 'helloo';
const splitEqual = (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(splitEqual(str, 3)); ผลลัพธ์
ผลลัพธ์ในคอนโซลจะเป็น -
[ 'ho', 'eo', 'll' ]