数据类型

JavaScript的数据类型分为两种:原始类型和引用类型。

原始类型

原始类型是指直接存储在变量中的简单数据类型,包括:

  • 数值(Number)
  • 字符串(String)
  • 布尔值(Boolean)
  • null
  • undefined
  • Symbol

原始类型的值是不可改变的,一旦创建,就无法改变。

引用类型

引用类型是指通过变量来访问的对象,包括:

  • 对象(Object)
  • 函数(Function)
  • 数组(Array)
  • 正则表达式(RegExp)
  • 日期(Date)
  • 错误对象(Error)
  • 正则表达式(RegExp)

引用类型的值是可改变的,一旦创建,可以改变。

类型转换

自动转换

当进行算术运算时,如果其中一个操作数是字符串,则会将字符串转换为数值。

1
2
3
4
var num1 = 10;
var num2 = '20';
var result = num1 + num2;
console.log(result); // 30

当进行比较运算时,如果其中一个操作数是字符串,则会将字符串转换为数值。

1
2
3
4
var num1 = 10;
var num2 = '20';
var result = num1 > num2;
console.log(result); // true

强制转换

使用Number()函数可以将字符串转换为数值。

1
2
3
4
var num1 = 10;
var num2 = '20';
var result = Number(num1) + Number(num2);
console.log(result); // 30

使用String()函数可以将数值转换为字符串。

1
2
3
4
var num1 = 10;
var num2 = '20';
var result = String(num1) + String(num2);
console.log(result); // 1020

使用Boolean()函数可以将数值转换为布尔值。

1
2
3
4
var num1 = 10;
var num2 = '20';
var result = Boolean(num1) && Boolean(num2);
console.log(result); // true

使用parseInt()函数可以将字符串转换为整数。

1
2
3
4
var num1 = 10;
var num2 = '20';
var result = parseInt(num1) + parseInt(num2);
console.log(result); // 30

使用parseFloat()函数可以将字符串转换为浮点数。

1
2
3
4
var num1 = 10;
var num2 = '20.5';
var result = parseFloat(num1) + parseFloat(num2);
console.log(result); // 30.5

使用eval()函数可以将字符串转换为数值。

1
2
3
4
var num1 = 10;
var num2 = '20';
var result = eval(num1) + eval(num2);
console.log(result); // 30

使用isNaN()函数可以判断一个数值是否为非数值。

1
2
3
4
var num1 = 10;
var num2 = '20';
var result = isNaN(num1) && isNaN(num2);
console.log(result); // false

使用isFinite()函数可以判断一个数值是否为有限数值。

1
2
3
4
var num1 = 10;
var num2 = '20';
var result = isFinite(num1) && isFinite(num2);
console.log(result); // true

使用encodeURI()函数可以将字符串转换为URI编码。

1
2
3
var str = 'http://www.baidu.com';
var result = encodeURI(str);
console.log(result); // http%3A%2F%2Fwww.baidu.com

使用decodeURI()函数可以将URI编码转换为字符串。

1
2
3
var str = 'http%3A%2F%2Fwww.baidu.com';
var result = decodeURI(str);
console.log(result); // http://www.baidu.com

累了,这些就是JavaScript中常见的类型转换方法,下期继续!