我看到可以像这样使用标签,但出于“安全”的原因,您可能需要它,这是我得到的示例:
let person = 'Mike';
let age = 28;
function myTag(strings, personExp, ageExp) {
let str0 = strings[0]; // "that "
let str1 = strings[1]; // " is a "
let ageStr;
if (ageExp > 99) {
ageStr = 'centenarian';
} else {
ageStr = 'youngster';
}
return str0 + personExp + str1 + ageStr;
}
let output = myTag `that ${ person } is a ${ age }`;
console.log(output); // that Mike is a youngster
但是“标记”一些字符串的意义是什么,您甚至不需要获取该示例的结果,一个简单的函数就可以完成任务,您能给我另一个示例和一些解释吗?
答案 0 :(得分:0)
根据社区答案和文档:
目的是您不必分别传递每个变量:
myTag`that ${ person } is a ${ age };`
不是
myTag('that ', person, ' is a ', age);
,并且在标记函数“ myTag”中,您可以访问字符串的每个部分,这些字符串由占位符分隔,例如一个$ {placecholder},其索引为:string [0] // that,string [1] // person,等
这是一些实用工具,可让您轻松更换占位符。