字符串模板字面量标签的标签函数参数问题
《JavaScript高程》第四版关于字符串模板字面量标签那里的案例:
let a = 6;
let b = 9;
function simpleTag(strings, aValExpression, bValExpression, sumExpression) {
console.log(strings);
console.log(aValExpression);
console.log(bValExpression);
console.log(sumExpression);
return 'foobar';
}
let untaggedResult = `${ a } + ${ b } = ${ a + b }`;
let taggedResult = simpleTag`${ a } + ${ b } = ${ a + b }`;
在参考了文章 https://www.softwhy.com/artic... 之后我觉得console.log(strings);输出的结果和我预想的不一样,我
觉得输出的数组应该是[' ','+',' ','=',' ']
应该是5个元素,空格,加号,空格,等号,空格。
不知道是不是我理解的错误。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
应当是
[ '', ' + ', ' = ', '' ]
。不是说把外面的字符一个一个放进数组,第一个参数是模板参数和边界的间隔。
看了那个帖子后面的解释,终于看明白了