数据类型(重点)
- 是指我们存储在内存中的数据的类型
- 我们通常分为两大类 基本数据类型 和 复杂数据类型
基本数据类型
-
数值类型(number)
- 一切数字都是数值类型
NaN(not a number),一个非数字
-
字符串类型(string)
- 被引号包裹的所有内容(可以是单引号也可以是双引号)
-
布尔类型(boolean)
- 只有两个(
true或者false)
- 只有两个(
-
null类型(null)
- 只有一个,就是
null,表示空的意思
- 只有一个,就是
-
undefined类型(undefined)
- 只有一个,就是
undefined,表示没有值的意思
- 只有一个,就是
复杂数据类型(暂时先不讲)
- 对象类型(object)
- 函数类型(function)
- 。。。
判断数据类型
- 既然已经把数据分开了类型,那么我们就要知道我们存储的数据是一个什么类型的数据
- 使用
typeof关键字来进行判断
// 第一种使用方式
var n1 = 100;
console.log(typeof n1);
// 第二种使用方式
var s1 = 'abcdefg';
console.log(typeof(s1));
判断一个变量是不是数字
- 可以使用
isNaN这个方法来判断一个变量是不是数字 isNaN:is not a number
// 如果变量是一个数字
var n1 = 100;
console.log(isNaN(n1)); //=> false
// 如果变量不是一个数字
var s1 = 'Jack'
console.log(isNaN(s1)); //=> true
数据类型转换
- 数据类型之间的转换,比如数字转成字符串,字符串转成布尔,布尔转成数字等
其他数据类型转成数值
-
Number(变量)可以把一个变量强制转换成数值类型
可以转换小数,会保留小数
可以转换布尔值
遇到不可转换的都会返回
NaN -
parseInt(变量)从第一位开始检查,是数字就转换,知道一个不是数字的内容
开头就不是数字,那么直接返回
NaN不认识小数点,只能保留整数
-
parseFloat(变量)从第一位开始检查,是数字就转换,知道一个不是数字的内容
开头就不是数字,那么直接返回
NaN认识一次小数点
-
除了加法以外的数学运算
运算符两边都是可运算数字才行
如果运算符任何一遍不是一个可运算数字,那么就会返回
NaN加法不可以用
其他数据类型转成字符串
-
变量.toString()有一些数据类型不能使用
toString()方法,比如undefined和null -
String(变量)所有数据类型都可以
-
使用加法运算
在 JS 里面,
+由两个含义字符串拼接: 只要
+任意一边是字符串,就会进行字符串拼接加法运算:只有
+两边都是数字的时候,才会进行数学运算
其他数据类型转成布尔
-
Boolean(变量)在 js 中,只有
''、0、null、undefined、NaN,这些是false其余都是
true
\