字符串(string)
字符串的作用类似于我们日常生活中使用文字或语言。在JS中字符串需要放入到引号的里边(单引号 ‘ 双引号 ” 都可以)。
let a = 'Hello World'
let b = "你好世界"
在字符串中使用\(反斜杠)作为转义字符,当需要使用一些特殊符号时需要使用反斜杠来表示。比如:使用\’表示’,使用\”表示”,使用\\表示\,使用\n表示换行等。
示例 | 作用 |
\’ | 表示单引号 ‘ |
\” | 表示双引号 “ |
\\ | 表示反斜杠 \ |
\n | 表示换行 |
\t | 表示制表符(缩进) |
console.log('--> \' <--')
// \' 会输出 '
运行结果:
--> ' <--
console.log('--> \" <--')
// \" 会输出 "
运行结果:
--> " <--
console.log('--> \\ <--')
// \\ 会输出 \
运行结果:
--> \ <--
console.log('--> \n <--')
// \n 会输出 换行
运行结果:
-->
<--
console.log('--> \t <--')
// \t' 会输出 缩进
运行结果:
--> <--
多行
字符串需要使用引号引起来,但是默认情况下引号是不能换行的,这意味着,即使字符串再长,也一定要写在一行中。
let s = "少小离家老大回乡音无改鬓毛衰儿童相见不相识笑问客从何处来"
这样的话,当我们需要创建一些比较长的字符串时是非常的麻烦的。所以在创建一些比较长的字符串时,可以将其分解为多个字符串然后使用+连接。上述字符串可以写成这个样子:
let s = "少小离家老大回" +
"乡音无改鬓毛衰" +
"儿童相见不相识" +
"笑问客从何处来"
这两种写法的最终效果是一摸一样的,但是第二种写法阅读起来会更加的清晰。还有一种写法,可以在字符串的结尾添加一个反斜杠(\)。\相当于对结尾的换行服进行了转义,这样可以使引号跨多行使用。
let s = "少小离家老大回\
乡音无改鬓毛衰\
儿童相见不相识\
笑问客从何处来"
这种写法也是可以的,但在一些老版本的浏览器中,这种方式并不支持。
除此之外还有一种字符串称为模板字符串,模板字符串不在使用单引号和双引号,而是使用反单引号`来表示。
let s = `今天天气真不错`
和普通字符串不同,模板字符串可以跨多行使用。
let s = `少小离家老大回
乡音无改鬓毛衰
儿童相见不相识
笑问客从何处来`
但是模板字符串的作用不仅于此,在模板字符串中,可以直接使用变量,这样变量的值将会自动成为字符串中的一部分。
let a = '孙悟空' let s = `${a}大战钢铁侠!`
// 孙悟空大战钢铁侠!
${变量}是固定的语法,在模板字符串中可以直接使用,设置后设置后将会被变量的实际值所替换。比如上例中,${a}最终会被替换为孙悟空,字符串最终会显示为孙悟空大战钢铁侠。
在一些老版本的浏览器中,并不支持模版字符串。