一、JavaScript的六种基本类型:
基本数据类型:
String、Number、Boolean、Null、Undefined
引用数据类型:
Object
二、强制类型转换:
主要指将其他的数据类型转换为 String、Number、Boolean
转String:
方式一:调用被转换数据类型的 toString() 方法返回值,该方法不会影响到原变量, null 和 undefined 没有该方法。
var a=123; a=a.toString();
方式二:调用 String() 函数,同一不会影响原变量,但该方法支持 null 和 undefined
var a=123; a=String(a);
转Number:
方式一:Number()
- 如果出现非数字内容则转为NaN
- 如果为空串或全是空格的字符串则转为0
- 如果为布尔值则true为1,false为0
- 如果Null,则转为0
方式二:parseInt() 针对整数和 parseFloat() 针对小数,可以将一个字符串中的有效内容截取出来,从左至右读取,对于非String的值会先转换为String再操作
转Boolean:
Boolean() 函数可以将其他数据转为Boolean
- 数字转布尔,除了0和NaN,其他都是true
- 字符串转布尔,除了空串,其他都是true
- null 和 undefined 都会转为 false
- 对象转换为 true
三、如何表示其它进制的数字:
- 十六进制的数字,以0x开头
- 八进制的数字,以0开头
- 二进制的数字,以0b开头,但并非所有浏览器都支持
注:a=parseInt(数值,进制数) 该方法可以确定想要的进制数
四、运算符 / 操作符
typeof:可以获得一个值的类型,以字符串的形式返回结果
算术运算符:如果对非数字类型运算会先转换为数字类型(除了加法中存在字符串),任何值与字符串进行加法都会转字符串进行拼接,与NaN运算都是NaN
一元运算符:+正 -负 对于非Number类型会先转换为Number
五、==和===的区别
==比较时会自动将类型转换为相同的再进行比较