干巴爹兔的博客 干巴爹兔的博客
首页
  • 前端文章

    • JavaScript
    • HTML
    • Vue
  • 学习笔记

    • JavaScript教程
    • React学习笔记
    • Electron学习笔记
  • 开源项目

    • cloud-app-admin
    • 下班了吗Vscode插件
    • Subversion变更单插件
  • Server

    • Django
  • 学习笔记

    • MySQL学习笔记
  • 运维

    • 服务器部署
    • Linux
  • 日常学习

    • 学习方法
关于
收藏
友链
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

干巴爹兔

卑微的前端打工人
首页
  • 前端文章

    • JavaScript
    • HTML
    • Vue
  • 学习笔记

    • JavaScript教程
    • React学习笔记
    • Electron学习笔记
  • 开源项目

    • cloud-app-admin
    • 下班了吗Vscode插件
    • Subversion变更单插件
  • Server

    • Django
  • 学习笔记

    • MySQL学习笔记
  • 运维

    • 服务器部署
    • Linux
  • 日常学习

    • 学习方法
关于
收藏
友链
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • JavaScript文章

    • 标签模板
    • ES modules A cartoon deep-dive
  • 学习笔记

  • 开源项目

  • HTML

  • Vue

  • 前端
  • JavaScript文章
干巴爹兔
2022-08-25

标签模板

# 标签模版

行 A 中的表达式是标签模板:

const first = 'Lisa';
const last = 'Simpson';

const result = tagFunction`Hello ${first} ${last}!`; // A

1
2
3
4
5

最后一行相当于:

const result = tagFunction(['Hello ', ' ', '!'], first, last);

1
2

tagFunction的参数是:

  • 模板字符串(第一个参数):一个包含插值(${...})周围文本片段的数组。

    • 在示例中:['Hello ', ' ', '!']
  • 替换值(剩余参数):插值。

    • 在示例中:'Lisa'和'Simpson'

字面值的静态(固定)部分(模板字符串)与动态部分(替换)分开。

tagFunction可以返回任意值,并接受模板字符串的两个视图作为输入(只有熟视图显示在上一个示例中):

  • 熟视图

    • \t变为制表符

    • \变为一个反斜杠

  • 原始视图,其中:

    • \t变为斜线后跟t

    • \变为两个反斜杠

原始视图通过String.raw和类似的应用提供原始字符串字面值。

编辑 (opens new window)
#JavaScript
上次更新: 2022/08/25, 20:47:16
ES modules A cartoon deep-dive

ES modules A cartoon deep-dive→

最近更新
01
使用Vscode开发一个小插件
10-21
02
Vscode插件配置项监听
10-18
03
使用has属性构造必填效果
10-14
更多文章>
Theme by Vdoing | Copyright © 2020-2023 互联网ICP备案: 闽ICP备18027236号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式