javaScript:模板字符串让你忘记字符串拼接

目录

一.前言

二.模板字符串的使用

1.介绍

[2.模板字符串 支持换行](#2.模板字符串 支持换行)

模板字符串更适合元素写入

innerHTML模板字符串写法

3.模板字符串中,可以运行表达式

4.模板字符串中可以运行函数

三.总结

语法:

多行字符串:

变量插值:

代码可读性:

容错性:


一.前言

JavaScript中的模板字符串(Template Strings),也称为模板字面量,是一种方便创建多行字符串和插入表达式的方式。使用模板字符串可以将变量、表达式或函数嵌入到字符串中,而无需使用字符串连接操作符(+)。模板字符串使用反引号(`)作为字符串的定界符,而不是单引号或双引号。

二.模板字符串的使用

1.介绍

模板字符串

使用 反引号 `` 作为字符串的标识

在模板字符串中使用变量,使用方法是${变量名}

模板字符串对比传统字符串拼接在写法上和功能上都有明显优势

javascript 复制代码
 let username = '岳飞'
    let age = 36
    let story = '打败金兀术'

    let str = '姓名:'+username+'年龄:'+age+'事迹:'+story
    console.log(str);
    /*
    模板字符串
    使用 反引号 `` 作为字符串的标识
    在模板字符串中使用变量,使用方法是${变量名}
    */ 
    let str1 = `姓名: ${username},年龄: ${age},事迹:${story}`
    console.log(str1);

2.模板字符串 支持换行

javascript 复制代码
    /*模板字符串 支持换行*/

    let str2 = `
        姓名:${username}
        姓名:${age}
        事迹:${story}
    `
    console.log(str2)

模板字符串更适合元素写入

在JavaScript中,使用字符串拼接进行换行可能会导致错误(或使用转义符(\n)插入换行符比较麻烦),但使用模板字符串则不会出现此问题。而且,通过使用模板字符串和innerHTML属性可以实现换行效果。相比之下,模板字符串对于代码的可读性和容错性都更高。

innerHTML模板字符串写法

javascript 复制代码
  let btn = document.getElementById('btn')
    let list = document.getElementById('list')

    btn.onclick = function(){
        let html = ''
        for (let i = 0; i < 10; i++) {
           html += `
        <li>
            <h1>${username}</h1>
            <p>${age}</p>
            <p>${story}</p>
        </li>
           `
            
        }
        list.innerHTML = html
    }

3.模板字符串中,可以运行表达式

javascript 复制代码
  /*
    模板字符串中,可以运行表达式
    */
   let str3 = `1+1=${1+1}`
   console.log(str3);

   let str4 = `同时天涯沦落人,${3>4? '莫愁前路无知己':'从此消亡是路人'}`
   console.log(str4);

4.模板字符串中可以运行函数

javascript 复制代码
/*
模板字符串中可以运行函数
*/    
function show(){
    return '莫愁前路无知己'
}
let str5 = `${show()},凭君传语报平安`
console.log(str5);

三.总结

模板字符串和字符串拼接都用于创建字符串,但它们在语法和功能上有一些区别。下面是模板字符串和字符串拼接的对比总结:

语法:

  • 字符串拼接使用加号(+)或concat等方法来连接多个字符串。
  • 模板字符串使用反引号()作为定界符,并使用占位符${}`插入变量、表达式或函数调用。

多行字符串:

  • 字符串拼接需要使用换行符和字符串连接操作符来创建多行字符串,或者使用转义符(\n)插入换行符。
  • 模板字符串直接支持多行字符串,无需使用换行符或连接操作符,可以保留字符串中的换行符和缩进。

变量插值:

  • 字符串拼接需要将变量通过加号或其他方法与字符串连接起来。
  • 模板字符串可以在占位符${}中直接插入变量、表达式或函数调用,并与其他字符串内容无缝搭配。

代码可读性:

  • 字符串拼接可能会造成较长、难以阅读和维护的代码,尤其是在含有大量变量或复杂逻辑的情况下。
  • 模板字符串提供了更清晰、更易读的语法,将变量直接嵌入字符串中,使代码更易于理解和修改。

容错性:

  • 字符串拼接容易出现遗漏加号或出错的情况,特别是在复杂的拼接操作中。
  • 模板字符串在插入变量或表达式时更直观且容易检查,并且避免了常见的错误。
相关推荐
姑苏风1 分钟前
《Kotlin实战》-附录
android·开发语言·kotlin
奋斗的小花生1 小时前
c++ 多态性
开发语言·c++
魔道不误砍柴功1 小时前
Java 中如何巧妙应用 Function 让方法复用性更强
java·开发语言·python
闲晨1 小时前
C++ 继承:代码传承的魔法棒,开启奇幻编程之旅
java·c语言·开发语言·c++·经验分享
老猿讲编程1 小时前
一个例子来说明Ada语言的实时性支持
开发语言·ada
Chrikk2 小时前
Go-性能调优实战案例
开发语言·后端·golang
幼儿园老大*2 小时前
Go的环境搭建以及GoLand安装教程
开发语言·经验分享·后端·golang·go
canyuemanyue2 小时前
go语言连续监控事件并回调处理
开发语言·后端·golang
杜杜的man3 小时前
【go从零单排】go语言中的指针
开发语言·后端·golang
cs_dn_Jie3 小时前
钉钉 H5 微应用 手机端调试
前端·javascript·vue.js·vue·钉钉