博客列表 >【JS】JS之模板字面量与模板函数

【JS】JS之模板字面量与模板函数

可乐随笔
可乐随笔原创
2022年11月30日 20:40:15533浏览

模板字面量与模板函数

1. 模板字面量

  1. //字符串的二大痛点
  2. // 1. 多行字符串
  3. // 过时写法 1
  4. // let str = '<ul>\n\
  5. // <li>1</li>\n\
  6. // <li>2</li>\n\
  7. // </ul>'
  8. // console.log(str)
  9. // 过时写法 2
  10. // let arr =['<ul>\n','<li>1</li>\n','<li>2</li>\n','</ul>\n']
  11. // str=arr.join('')
  12. // console.log(str)
  13. //* ES6 模板字面量写法,最好的写法
  14. const str = `<ul>
  15. <li>1</li>
  16. <li>2</li>
  17. </ul>`
  18. console.log(str)

2. 字符串,嵌入表达式(变量/插值)

  1. // php:双引号
  2. console.log('-------------------------')
  3. // +
  4. let a = 10
  5. let b = 20
  6. const str1 = a + '+' + b + ' = ' + (a + b)
  7. console.log(str1)
  8. //10+20=30
  9. console.log('-------------------------')
  10. a = 20
  11. b = 30
  12. //ES6 : 模板字面量
  13. const str2 = `${a}+${b} = ${a + b}`
  14. console.log(str2)
  15. console.log('-------------------------')

2.模板函数

模板字面量组成部分

  1. // * 1.字符串字面量: + , = , 空格
  2. // * 2.表达式: 变量, a, b
  3. // 声明一个模板函数
  4. const sum = function (strings, ...args) {
  5. //输出字面量数组
  6. console.log(strings)
  7. console.log(strings.length)
  8. //输出变量表达式数组
  9. console.log(args)
  10. console.log(args.length)
  11. // **! 参数特点**
  12. // 1. 全是数组
  13. // 2. 字符串面量数组长度 = 变量数组长度 + 1
  14. // 3. 为什么加1,要确保返回的任然是一个字符串
  15. let result = ''
  16. for (let i = 0; i < strings.length; i++) {
  17. result += strings[i] + (args[i] ? args[i] : '')
  18. }
  19. console.log(result)
  20. }
  21. let num = 10
  22. let price = 180
  23. sum`商品金额 = ${num} * ${price} = ${num * price} 元`
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议