ES6 之模板字符串标记

大家应该都对es6新出的模板字符串比较熟悉,语义得出返回的是字符串,通过"``"将内容包裹起来形成一个新字符串.方便在于拼接参数直接"${参数}"就可以实现。
但这篇文章的重点在于:

字符串标记

     const name1 = '运动';
        const name2 = '游戏';
        let str = tag `我喜欢${name1},也喜欢玩${name2}。`;
        function tag(parts,...args) {
            const arrValues = Array.from(arguments).slice(1);
            let str = '';
            for (let i = 0; i < args.length; i++) {
                str += `${parts[i]}:${args[i]}`;
                if (args.length-1 == i) {
                    str += parts[i + 1];
                }
            }
            return str;
        }
        console.log(str);

通过列子分析,如果在模板字符串前面添加了一个函数.则会执行函数。且方法参数为:

tag(flag1,flag2,flag3,...);
flag=["我喜欢","。也喜欢玩","。"]
flag2=运动
flag3=游戏

都得到了所有参数,那岂不是可以为所欲为,所以这里就举例了一个简单例子,在每个参数前面添加一个:,如果有兴趣的话自己下去试一下。

原文地址:https://www.cnblogs.com/pengyinghao/p/13336964.html