เราต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์ของสตริงค่าคงที่ ฟังก์ชันควรทำสองอย่างต่อไปนี้
ใช้วิธีการเวียนเกิด (recursive approach)
ทำให้ตัวอักษรแรกของแต่ละสตริงเป็นตัวพิมพ์ใหญ่
ฟังก์ชันควรทำเช่นนี้โดยไม่ใช้พื้นที่เพิ่มเติมสำหรับเก็บอีกอาร์เรย์หนึ่ง
ตัวอย่างเช่น
ถ้าอินพุทอาร์เรย์คือ
const arr = ['apple', 'banana', 'orange', 'grapes'];
อาร์เรย์ควรถูกเปลี่ยนเป็น
const output = ['Apple', 'Banana', 'Orange', 'Grapes'];
ตัวอย่างโค้ด
โค้ดสำหรับการทำงานนี้จะเป็นดังนี้
const arr = ['apple', 'banana', 'orange', 'grapes'];
const capitalize = (arr = [], ind = 0) => {
const helper = (str = '') => {
return str[0].toUpperCase() + str.slice(1).toLowerCase();
};
if(ind < arr.length){
arr[ind] = helper(arr[ind]);
return capitalize(arr, ind + 1);
};
return;
};
capitalize(arr);
console.log(arr);ผลลัพธ์
ผลลัพธ์ในคอนโซลจะเป็นดังนี้
[ 'Apple', 'Banana', 'Orange', 'Grapes' ]