1. 字符串是不可變的
字符串一旦創(chuàng)建就是不可變的,后續(xù)的修改都是新建一個(gè)新的字符串而不是在原有的字符串上修改
// 在內(nèi)存中開辟 可以存放五個(gè)字母的空間 str指向該空間
let str = 'first'
// 在內(nèi)存中 開辟可以存放 10個(gè)字母的空間 重新將str指向該空間
str += 'name'
2.模板字符串
可以基于模板字符串標(biāo)簽函數(shù)實(shí)現(xiàn)字符串編譯引擎
function templateStr (strings, ...expressions) {
return strings[0] +
expressions.map((e, i) => `${e}${strings[i + 1]} 自定義字符`)
.join('')
}
const a = 1
const b = 2
let str = templateStr`9${a}+$=${a + b}`
console.log(str) // zdz-log

image.png