قالبهای متنی (Template literals)، نوعی از مقادیر ثابت رشتهای هستند که امکان قرار دادن عبارتهای مختلف (Embedded expressions) را در دل خود فراهم میکنند. با استفاده از آنها، شما میتوانید به راحتی از قابلیتهای رشتههای چندخطی (Multi-line strings) و درون-سپاری رشتهها (String interpolation) بهره ببرید.
قالبهای متنی به جای دبلکوتیشن یا تککوتیشن، درون کاراکترهای بکتیک (Backtick: `) قرار میگیرند. این قالبها میتوانند شامل نگهدارندهها یا متغیرها (Placeholders) باشند که با علامت دلار و کروشه باز و بسته (${expression}) مشخص میشوند.
هر کاراکتر خط جدیدی (Newline) که در کد منبع وارد شود، به همان صورت بخشی از قالب متنی محسوب میشود. در رشتههای معمولی، برای داشتن یک رشتهی چندخطی مجبور بودید از ساختار زیر استفاده کنید:
console.log(
"string text line 1\n\
string text line 2",
);
// "string text line 1
// string text line 2"
اما حالا برای گرفتن همان نتیجه با قالبهای متنی، میتوانید خیلی راحت بنویسید:
console.log(`string text line 1
string text line 2`);
// "string text line 1
// string text line 2"
برای قرار دادن عبارتها و محاسبات در میان رشتههای معمولی، مجبور بودید از نحو زیر (و اتصال با علامت +) استفاده کنید:
const five = 5;
const ten = 10;
console.log(
"Fifteen is " + (five + ten) + " and not " + (2 * five + ten) + ".",
);
// "Fifteen is 15 and not 20."
اکنون با وجود قالبهای متنی، میتوانید از این سینتکسِ جذاب (Syntactic sugar) استفاده کنید که جایگذاریها را بسیار خواناتر میکند:
const five = 5;
const ten = 10;
console.log(`Fifteen is ${five + ten} and not ${2 * five + ten}.`);
// "Fifteen is 15 and not 20."
این محتوا کاملا رایگان توسط تیم کدلپر ترجمه شده و در اختیار شما کاربران عزیز قرار گرفته است، هر گونه کپی برداری برای مقاصد غیر رایگان و بدون ذکر منبع، مورد پیگیری قانونی قرار میگیرد.
ترجمه شده از منبع: https://developer.mozilla.org/en-US/docs/Web/JavaScript