tagged template
let person = 'Mike';
let age = 28;
// -------------------------
// โญ๏ธ tagged template
// -------------------------
// โญtagโฎ <-- tag function
// โ โ โญโ0โโฎ โญโ1โโโฎ 2 <-- array of strings (p0)
let output = myTag`That ${person} is a ${age}.`;
// โฐโโp1โโโโฏ โฐโp2โโฏ <-- interpolations (p1, p2 ...)
console.log(output);
// That Mike is a youngster.
// -----------------------
// โญ๏ธ tag function
// -----------------------
// โญโarrโโฎ โญโinterpolationsโโฎ
function myTag(strings, personExp, ageExp ) {
// manipulate array of strings
let str0 = strings[0]; // "That "
let str1 = strings[1]; // " is a "
let str2 = strings[2]; // "."
// manipulate interpolations
let ageStr = ageExp > 99 ? 'centenarian' : 'youngster';
return `${str0}${personExp}${str1}${ageStr}${str2}`;
}destructuring assignment is often used to manipulate interpolation parameters.
Last updated
Was this helpful?