Saya menulis fungsi yang mengambil perkataan dan menggunakan huruf besar pada tiga huruf pertama. Sekarang saya perlu menjalankan fungsi yang sama pada susunan perkataan untuk mengembalikan tiga huruf pertama setiap perkataan dalam huruf besar. Saya melihat ramai orang bertanya bagaimana untuk menggunakan huruf besar huruf pertama setiap perkataan dalam ayat, tetapi ia bukan perkara yang sama. Saya perlu menggunakan fungsi yang telah saya tulis supaya apabila saya mencetaknya menggunakan console.log, outputnya kelihatan seperti ini:
console.log(applyAll(['str1', 'str2', 'str3', 'str4'], capitalizeThreeLetters));
Saya cuba menggunakan gelung for untuk mencapai ini, tetapi ia mengembalikan hasil semua perkataan yang digabungkan. Dalam penyelidikan saya, saya melihat bahawa anda boleh menggunakan kaedah forEach() untuk menjalankan fungsi pada elemen tatasusunan, tetapi saya tidak dapat memikirkan cara menggunakannya.
//Fungsi yang mengambil str mengembalikannya dengan tiga huruf pertama dengan huruf besar function capitalizeThreeLetters(str){ biarkan capFirst = str[0].toUpperCase(); biarkan capSecond = str[1].toUpperCase(); biarkan capThird = str[2].toUpperCase(); biarkan splitStr = str.slice(3); biarkan wholeStr = capFirst + capSecond + capThird + splitStr; kembalikan keseluruhanStr; } console.log(capitalizeThreeLetters('testing')); console.log(capitalizeThreeLetters('lagi')); //Fungsi yang mengambil tatasusunan rentetan dan menggunakan fungsi huruf besarThreeLetters pada setiap elemen tatasusunan supaya setiap perkataan dikembalikan dengan tiga huruf pertama yang dihuruf besar function applyAll(arr){ untuk (biar i = 0; i < arr.length; i++){ kembalikan huruf besarThreeLetters(arr); } } console.log(applyAll(['mai', 'brian', 'jeho', 'han'], capitalizeThreeLetters)); // => mengembalikan 'MAIBRIANJEHOhan' // => hendaklah mengembalikan ['MAI', 'BRIan', 'JEHo', 'HAN']
Fungsi applyAll anda tidak berfungsi seperti yang anda mahu. Apabila anda kembali, fungsi keluar serta-merta. Dalam kes ini, anda kembali ke dalam gelung, menghalang gelung daripada meneruskan dan menjalankan dua lelaran yang lain.
Masalah kedua anda ialah anda menghantar keseluruhan tatasusunan untuk menggunakan huruf besarTiga Huruf, bukan satu perkataan pun. Anda mungkin mahu menggunakan huruf besarThreeLetters(arr[i]). Kini, anda menghantar keseluruhan tatasusunan, menyebabkan tiga perkataan pertama dalam tatasusunan akan dihuruf besar, bukannya tiga huruf pertama bagi setiap perkataan.
Anda boleh menggunakan kaedah peta untuk membetulkannya:
Menggunakan fungsi peta pada tatasusunan akan memanggil fungsi pada setiap elemen tatasusunan dan mengembalikan tatasusunan baharu yang mengandungi keputusan.