Fungsi Panggilan Backticks dalam JavaScript: Demystifying Templat Teg
Apabila melaksanakan kod JavaScript yang menggabungkan backticks, seperti console.log1`, sesetengah pengguna telah menemui output yang tidak dijangka. Tingkah laku ini berpunca daripada templat berteg dalam ES-6, yang membenarkan manipulasi rentetan tersuai.
Memahami Templat Teg
Templat berteg ialah literal templat yang didahului oleh fungsi khas, seperti konsol.log. Fungsi ini menerima nilai yang dihuraikan rentetan templat bersama-sama dengan rakan sejawat mentah yang belum dihuraikan.
Dalam kes console.log1, fungsi teg ialah console.log. Ia menerima dua parameter: rentetan (tatasusunan literal rentetan) dan nilai` (susunan nilai interpolasi).
Penjelasan Output
When console.log1` dilaksanakan, enjin JavaScript menukar kod ES6 kepada ES5. Kod yang ditranspilkan menyerupai yang berikut:
console.log(_taggedTemplateLiteralLoose(["1"], ["1"]));
Di sini, _taggedTemplateLiteralLoose ialah fungsi transpil yang memperuntukkan literal rentetan mentah kepada sifat mentah tatasusunan rentetan.
Templat berteg literal, oleh itu , mengembalikan tatasusunan dengan struktur berikut:
["1", { raw: ["1"] }]
Apabila tatasusunan ini dihantar ke console.log, tatasusunan itu sendiri dilog, menghasilkan output yang diperhatikan:
["1", { raw: ["1"] }]
Kelebihan Templat Teg
Templat berteg menawarkan beberapa kelebihan berbanding manipulasi rentetan tradisional kaedah:
Atas ialah kandungan terperinci Bagaimanakah Backticks Mempengaruhi Panggilan Fungsi JavaScript dan Apakah Templat Teg?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!