update: 字符串相关
This commit is contained in:
parent
175c7c2108
commit
4dd15ec49c
@ -29,7 +29,7 @@ name = 123; // 强制将变量 name 修改为 数字类型
|
|||||||
|
|
||||||
- **引用数据类型(引用类型)**:Object 对象。
|
- **引用数据类型(引用类型)**:Object 对象。
|
||||||
|
|
||||||
注意:内置对象function、Array、Date、RegExp、Error等都是属于Object类型。也就是说,除了那五种基本数据类型之外,其他的,都称之为 Object类型。
|
注意:内置对象 Function、Array、Date、RegExp、Error等都是属于 Object 类型。也就是说,除了那五种基本数据类型之外,其他的,都称之为 Object类型。
|
||||||
|
|
||||||
> 面试问:引用数据类型有几种?
|
> 面试问:引用数据类型有几种?
|
||||||
|
|
||||||
@ -45,20 +45,27 @@ name = 123; // 强制将变量 name 修改为 数字类型
|
|||||||
|
|
||||||
## String 字符串
|
## String 字符串
|
||||||
|
|
||||||
来看个示例。现有如下代码:
|
### 语法
|
||||||
|
|
||||||
|
字符串型可以是引号中的任意文本,其语法为:双引号 `""` 或者单引号 `''`。
|
||||||
|
|
||||||
|
来看个示例。下面的这些,都是字符串:
|
||||||
|
|
||||||
```javascript
|
```javascript
|
||||||
var a = "abcde";
|
var a = "abcde";
|
||||||
var b = "生命壹号";
|
var b = "千古壹号";
|
||||||
var c = "123123";
|
var c = "123123";
|
||||||
var d = "哈哈哈哈哈";
|
var d = '哈哈哈哈哈';
|
||||||
var e = ""; //空字符串
|
var e = ""; //空字符串
|
||||||
|
|
||||||
|
var f = haha; // 没使用引号,到这里会直接报错。因为会被认为是js代码,但是之前并没有定义 haha。
|
||||||
|
|
||||||
console.log(typeof a);
|
console.log(typeof a);
|
||||||
console.log(typeof b);
|
console.log(typeof b);
|
||||||
console.log(typeof c);
|
console.log(typeof c);
|
||||||
console.log(typeof d);
|
console.log(typeof d);
|
||||||
console.log(typeof e);
|
console.log(typeof e);
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
控制台输出如下:
|
控制台输出如下:
|
||||||
@ -71,32 +78,37 @@ name = 123; // 强制将变量 name 修改为 数字类型
|
|||||||
string
|
string
|
||||||
```
|
```
|
||||||
|
|
||||||
注意事项:
|
### 引号的注意事项
|
||||||
|
|
||||||
(1)在JS中,字符串需要使用引号引起来。使用双引号或单引号都可以,但是不要混着用。比如下面这样写是不可以的:
|
1、单引号和双引号不能混用。比如下面这样写是不可以的:
|
||||||
|
|
||||||
```javascript
|
```javascript
|
||||||
var str = 'hello";
|
var str = 'hello"; // 报错:Uncaught SyntaxError: Invalid or unexpected token
|
||||||
```
|
```
|
||||||
|
|
||||||
(2)引号不能嵌套:双引号里不能再放双引号,单引号里不能再放单引号。但是单引号里可以嵌套双引号。
|
2、同类引号不能嵌套:双引号里不能再放双引号,单引号里不能再放单引号。
|
||||||
|
|
||||||
(3)**转义字符**:在字符串中我们可以使用`\`作为转义字符,当表示一些特殊符号时可以使用`\`进行转义。
|
3、单引号里可以嵌套双引号;双引号里可以嵌套单引号。
|
||||||
|
|
||||||
|
### 转义字符
|
||||||
|
|
||||||
|
在字符串中我们可以使用`\`作为转义字符,当表示一些特殊符号时可以使用`\`进行转义。
|
||||||
|
|
||||||
|
|
||||||
- `\"` 表示 `"`
|
- `\"` 表示 `"`
|
||||||
|
|
||||||
- `\'` 表示 `'`
|
- `\'` 表示 `'`
|
||||||
|
|
||||||
- `\n` 表示换行
|
- `\\` 表示`\`
|
||||||
|
|
||||||
- `\r` 表示回车
|
- `\r` 表示回车
|
||||||
|
|
||||||
- `\t` 表示制表符
|
- `\n` 表示换行。n 的意思是 newline。
|
||||||
|
|
||||||
- `\b` 表示空格
|
- `\t` 表示缩进。t 的意思是 tab。
|
||||||
|
|
||||||
|
- `\b` 表示空格。b 的意思是 blank。
|
||||||
|
|
||||||
- `\\` 表示`\`
|
|
||||||
|
|
||||||
举例:
|
举例:
|
||||||
|
|
||||||
@ -116,18 +128,39 @@ var str = 'hello";
|
|||||||
\\\
|
\\\
|
||||||
```
|
```
|
||||||
|
|
||||||
将其他数值转换为字符串有三种方式:
|
### 获取字符串的长度
|
||||||
|
|
||||||
- 拼串
|
字符串是由若干个字符组成的,这些字符的数量就是字符串的长度。我们可以通过字符串的 length 属性可以获取整个字符串的长度。
|
||||||
|
|
||||||
- toString()
|
代码举例:
|
||||||
|
|
||||||
- String()
|
```javascript
|
||||||
|
var str1 = '千古壹号';
|
||||||
|
var str2 = '千古壹号,永不止步!';
|
||||||
|
|
||||||
|
var str3 = 'qianguyihao';
|
||||||
|
var str4 = 'qianguyihao, keep moving!';
|
||||||
|
|
||||||
|
console.log(str1.length); // 4
|
||||||
|
console.log(str2.length); // 10
|
||||||
|
console.log(str3.length); // 11
|
||||||
|
console.log(str4.length); // 25
|
||||||
|
```
|
||||||
|
|
||||||
|
由此可见,在字符串的 length 属性,在判断字符串的长度时,会认为:
|
||||||
|
|
||||||
|
- 一个中文算一个字符,一个英文算一个字符
|
||||||
|
|
||||||
|
- 一个标点符号(包括中文标点、英文标点)算一个字符
|
||||||
|
|
||||||
|
- 一个空格算一个字符
|
||||||
|
|
||||||
|
### 字符串拼接
|
||||||
|
|
||||||
|
|
||||||
### 补充知识:typeof 运算符
|
## 补充知识:typeof 运算符
|
||||||
|
|
||||||
`typeof()`表示“**获取变量的类型**”,返回的是小写,语法为:
|
`typeof`表示“**获取变量的类型**”,返回的是小写,语法为:
|
||||||
|
|
||||||
```
|
```
|
||||||
typeof 变量
|
typeof 变量
|
||||||
@ -147,6 +180,8 @@ typeof 变量
|
|||||||
|
|
||||||
在JavaScript中,只要是数,就是 number 数值型的。无论整浮、浮点数(即小数)、无论大小、无论正负,都是 number 类型的。
|
在JavaScript中,只要是数,就是 number 数值型的。无论整浮、浮点数(即小数)、无论大小、无论正负,都是 number 类型的。
|
||||||
|
|
||||||
|
关于 typeof 的知识,下一篇文章,我们会详细讲。
|
||||||
|
|
||||||
|
|
||||||
## 数值型:Number
|
## 数值型:Number
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user