首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

你知道什么是标签函数么?

JS中有一类特殊的函数 —— 标签函数,用于自定义模版字符串的处理逻辑。...内置的标签函数 JS中只有一个内置标签函数 —— String.raw,用于获取模字符串的原始字符串形式,即: 处理替换(例如替换${name}为变量实际的值) 不处理转义序列(例如 \n) 对于如下代码...分别打印s1、s2的结果如下: 之所以s1有换行符,而s2没有,是因为默认情况,模版字符串会处理转义字符(比如这里的\n),而String.raw不会处理。...举个例子,我们在JS文件中定义两个变量(markup与style),IDE此时只认为这是两个普通的模版字符串(没有语法高亮): 现在,我们将String.raw分别重命名为html和css: const...html = String.raw; const css = String.raw; IDE有了提示信息后,就能根据提示中的语言对模版字符串进行高亮了: 自定义标签函数 刚才我们已经实现了String.raw

37510
您找到你想要的搜索结果了吗?
是的
没有找到

正经人一辈子都用不到的 JavaScript 方法总结 (一)

String.raw 简介 String.raw() 是一个模板字符串的标签函数,用来获取一个模板字符串的原始字符串的,比如说,占位符(例如 ${foo})会被处理为它所代表的其他字符串,而转义字符(例如...语法 String.raw(callSite, ...substitutions) String.raw`templateString` 参数 callSite 一个模板字符串的“调用点对象”。...使用示例 以下是一些关于 String.raw 的使用示例: String.raw`Hi\n${2+3}!`; // 'Hi\\n5!'...,内插表达式还可以正常运行 // 正常情况下,你也许不需要将 String.raw() 当作函数调用。...我们使用 String.raw 来实现以下文章开头的需求: const filePath = String.raw`D:\bianchengsanmei\blogs\categories\JavaScript

29610

我不知道的前端(二)

这是什么东西听起来好厉害 不说都不知道,这是通过``定义的字符串带有的特性,我们光知道 `${}` 这种用法,却很少有人知道下边这种用法 `\n`.length //1 String.raw...+="***" return e } a`\n` //4 当我们不带括号使用函数,函数调用正常 上边的raw函数实际上是ES6内置的标签函数:String.raw...出于好奇,我试着如下调用了这个标签函数: String.raw(`\n`) String.raw("\n") raw()函数只接收无括号调用的方式 ---- LHS查询和RHS查询* JavaScript...对于这一块暂时不继续深入,标记一下有机会再说 ---- 条件式属性访问 Js是非常灵活的语言,null或undefined是我觉得最灵性的设定。...,应该这么写 if(res&&res.code===1){ //do something success } 对于专注于偷懒的程序员,这是个相当不错的特性 ---- 条件式调用 众所周知,js

38220

从 RegExp 构造器看 JS 字符串转义设计

2、表单输入项的字符串赋值给变量时也无需转义 假设页面中存在输入框 ,在输入框中输入字符 \w+\.ke\.qq\.com,则通过 JS 获取到的值可以直接传入 RegExp...3、JS 代码中的转义处理 另外一种可能用到 RegExp string 参数的场景是:基于 JS 逻辑,动态创建正则表达式。例如正则表达式 /\w{3}/ 中的数字 3,是通过某个变量来传递的。...为了解决模板字符串的解析和转义问题,ES6 模板字面量中引入了反引号(`)和 tag function(知名「CSS in JS」 库 styled-components 中大量使用了这种语法)。...这里的场景就可以写成十分类似 Python 的风格,当需要转义的内容比较多时,能保持较好的正则表达式语义: const r = String.raw let n = 3 new RegExp(r`\w{...回过头来看,JS 正则表达式构造器的参数设计问题,其实不是 RegExp 引起的,而是 JavaScript String 的设计缺陷:单引号和双引号非但没有参考 PHP/Shell 之类的设计,反而给前端社区留下

12.8K80

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券