当前位置: 首页 > news >正文

模板字符串【ES6】

“路漫漫其修远兮,吾将上下而求索。”—— 屈原《离骚》

目录

  • 什么是模板字符串?
  • 模板字符串特性及代码举例:
  • 详细举例用法:

什么是模板字符串?

模板字符串(Template Literals)是JavaScript中引入的一种新的字符串表示方式,它使用反引号(`)而不是单引号(')或双引号(")来定义字符串。

模板字符串特性及代码举例:

  • 多行字符串‌:模板字符串可以直接包含换行符,而不需要使用转义字符(\n)或字符串连接符(+)来连接多行字符串。
let message = `Hello,
world!`;
console.log(message);
//Hello,
//world!
  • 嵌入表达式‌:模板字符串中可以使用${}语法来嵌入表达式。这些表达式会被求值,并将其结果转换为字符串后嵌入到模板字符串中。
let name = "Alice";
let age = 30;
let greeting = `Hello, ${name}! You are ${age} years old.`;
console.log(greeting);// Hello, Alice! You are 30 years old.
  • 标签模板:模板字符串前面可以添加一个“标签”函数,该函数可以对模板字符串的内容进行处理,并返回一个结果。这提供了一种高级用法,允许开发者完全控制模板字符串的处理方式。
let name = "Alice";
let age = 30;
function tag (strings, ...values) {
      console.log(strings); // 模板字符串中的静态部分
      console.log(values);  // 插值表达式的结果
      return `Tagged template result`;
}

let result = tag`My name is ${name} and I am ${age} years old.`;
console.log(result);

在这里插入图片描述

  • String.raw方法‌:模板字符串还可以通过String.raw方法来获取“原始”字符串,即不对反斜杠(\)进行转义处理。
let path = `C:\Users\name`;
let rawPath = String.raw`C:\Users\name`;
console.log(path);   // 输出: C:\Usersame
console.log(rawPath);// 输出: C:\Users\name

详细举例用法:

${ }里面可以放表达式、+ 、-、*、/、普通变量、三目运算符、调用函数等!!!

<body>
  <ul>
  </ul>
  <style>
    .active {
      color: red;
    }
  </style>
  <script>
    let arr = ['kitty', 'Alice', 'Bob'];
    let newList = arr.map((item, index) => {
      return `<li class="${index == 0 ? 'active' : ''}">
        <b>${item}</b>
      </li>`;
    })
    console.log(newList);
    let oul = document.querySelector("ul");
    oul.innerHTML = newList.join("")
  </script>
</body>

在这里插入图片描述

<body>
  <ul>
  </ul>
  <style>
    .active {
      color: red;
    }
  </style>
  <script>
    let name = 'Kitty';
    let oli = `<li><b> ${name}</b></li>`
    function test () {
      return "自定义添加的内容"
    }
    let arr = ['kitty', 'Alice', 'Bob'];
    let newList = arr.map((item, index) => {
      return `<li class="${index == 0 ? 'active' : ''}">
        <b>${item}</b>
        ${test()}
      </li>`;
    })
    console.log(newList);
    let oul = document.querySelector("ul");
    oul.innerHTML = newList.join("")
  </script>
</body>

在这里插入图片描述


文章转载自:

http://0sotoejH.xkqjw.cn
http://8txZ7l9r.xkqjw.cn
http://N8oO0qDg.xkqjw.cn
http://cMAkItst.xkqjw.cn
http://yGcIaCT5.xkqjw.cn
http://9O1FwhR2.xkqjw.cn
http://1KtzdAvZ.xkqjw.cn
http://cIw01tEA.xkqjw.cn
http://8bVggZXb.xkqjw.cn
http://kg4HlOCZ.xkqjw.cn
http://pSip1V6N.xkqjw.cn
http://QSfvUz8b.xkqjw.cn
http://WSrGVkUC.xkqjw.cn
http://U2XTysDC.xkqjw.cn
http://29HpAKS7.xkqjw.cn
http://gCrCPAyL.xkqjw.cn
http://43h6LTT1.xkqjw.cn
http://2aO7tPsN.xkqjw.cn
http://1s7eJwps.xkqjw.cn
http://zQKaCv49.xkqjw.cn
http://7UjLBCHI.xkqjw.cn
http://wngpg72d.xkqjw.cn
http://LhWr4VPC.xkqjw.cn
http://Samft4zJ.xkqjw.cn
http://37382LeH.xkqjw.cn
http://wFSINIbE.xkqjw.cn
http://dMswCt7W.xkqjw.cn
http://qH4Kre2t.xkqjw.cn
http://3V7RrR4X.xkqjw.cn
http://43OqJgOn.xkqjw.cn
http://www.dtcms.com/a/45927.html

相关文章:

  • Oracle VM VirtualBox 7.1 安装与虚拟机创建全流程指南(Windows平台)
  • txt 转 json 使用python语言
  • 初步理解RNN和LSTM
  • 计算机毕业设计SpringBoot+Vue.js高校办公室行政事务管理系统(源码+文档+PPT+讲解)
  • 大唐杯——阶段二01
  • Bandicam录屏软件,设置延时录制
  • 深入理解Web通信基础:HTTP响应码、请求方法与协议安全
  • MybatisPlus详细使用
  • 使用Node.js打造交互式脚手架,简化模板下载与项目创建
  • 数据结构(初阶)(八)----排序
  • 【Linux】进程信号
  • 基于互联网协议的诊断通信(DoIP)
  • NLP基础之传统RNN模型
  • 物联网 智慧水库管理系统中集成无人机巡逻和隔空喊话
  • 介绍一下聚簇索引和非聚簇索引的定义和区别,以及优缺点?
  • 容器运行时详解
  • web3.0简介
  • 【EB-07】TC397 Tresos 导入通信ARXML
  • HTTP 协议的发展历程:从 HTTP/1.0 到 HTTP/2.0
  • 解码中国AI双雄突围:DeepSeek破壁与英伟达反攻背后的算力暗战
  • linux 内核dumpstack定位使用举例说明
  • 【基于Raft的KV共识算法】-序:Raft概述
  • AJAX 文件上传进度条 JAVA
  • 基于STM32的智能家居蓝牙系统(论文+源码)
  • uni-app 全局请求封装:支持 Promise,自动刷新 Token,解决 401 过期问题
  • 【框架】Spring、SpringBoot和SpringCloud区别
  • c++常用算法
  • 【Linux】消息队列和信号量
  • 深入理解Reactor Flux的生成方法
  • idea显示.java文件不能运行解决方式