JavaScript学习笔记-数据类型(String)
概述
定义
零或多个16位Unicode字符序列。
创建方式
- 单引号、双引号、反引号标示。
- 以某种引号作为字符串开头,必须仍然以该种引号作为字符串结尾。
1 | let message = 'Hello World' |
字符字面量
- 用于标识非打印字符或有其他用途的字符。
- 转义序列表示一个字符,在计算字符串长度时算一个字符。
- 如下表:
字面量 | 含义 |
---|---|
\n | 换行 |
\t | 制表 |
\b | 退格 |
\r | 回车 |
\f | 换页 |
\\ |
反斜杠 |
\' |
单引号 |
\" |
双引号 |
字符串特点
- 不可变:一旦创建就不能发生变化
- 如果要修改每个变量中的字符串的值,必须先销毁原始的字符串然后重新赋值
转换字符串
- 方法:toString()
- null和undefined没有toString()方法,直接返回两个值的字面量文本
- 数值调用toString方法可以接受一个参数,表示进制。
1
2
3let num = 10
console.log(num.toString(2))//"1010"
console.log(num.toString(8))//"12"
模板字面量(ES6)
- 模板字面量保留换行字符,可以跨行定义字符串
1
2
3
4
5
6
7
8
9
10
11let message1 = 'one\ntwo';
let message2 = `one
two`;
console.log(message1);
//one
//two
console.log(message2);
//one
//two
console.log(message1==message2);//true
字符串插值
- 表达式:${变量}
- 模板字面量不是字符串,是一种特殊的JS语句表达式
1 | let value = 5; |
- 所有插入的值都会使用toString()强制转为字符串
模板字面量标签函数
- 标签函数接收到的参数依次是原始字符串数组和对每个表达式求值的结果
1 | let a = 5; |
原始字符串
- String.raw标签函数可用于获取原始字符串
- 键盘输入的回车等不能获取到原始字符
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 姚永坤的小窝!
评论