目录
一、数据类型
1、为什么需要数据类型
2、变量的数据类型
3、数据类型的分类
二、数字型(数值型) Number
1、数字型进制
2、数字型范围(JS中数值的最大值和最小值)
3、数字型计算
4、isNaN()方式
5、typeof 来检查一个变量的类型,并输出
三、字符串String
1.定义字符串
2.嵌套变量
3.转义符 \
4.字符串长度,注意空格也是有长度的
5.字符串拼接
四、布尔值 Boolean
五、未定义 Undefined
六、空值Null
一、数据类型
1、为什么需要数据类型
在计算机中,不同的数据所需占用的存储空间是不同的,为了便于把数据分成所需内存大小不同的数据,充分利用存储空间,于是定义了不同的数据类型。简单来说,数据类型就是数据的类别型号
2、变量的数据类型
JS是一种弱类型或者动态语言。这就意味着不用提前声明变量的类型,在程序运行过程中,变量的数据类型是根据等号右边的值来自动确定的。
JS拥有动态类型,同时也意味着相同的变量可用作不同的类型
3、数据类型的分类
简单(一般)数据类型(Number、String、Boolean、Udefined、Null、Symbol)
复杂(引用)数据类型(Object,Function、Array、Date、RegExp、Math·····)
后续还会再增加别的数据类型....
二、数字型(数值型) Number
1、数字型进制
常见的进制有二进制、八进制、十进制、十六进制,在JS中,八进制前面加0,十六进制前面加0x
2、数字型范围(JS中数值的最大值和最小值)
Number.MAX_VALUE 为1.7976931348623157e+308
如果使用Number表示的数字超过了最大值,则会返回一个Infinity 表示正无穷
使用typeof 检查infinity也会返回number
Number.MIN_VALUE 大于0的最小值 为5e-324
// 最大值 Number.MAX_VALUE
var max = Number.MAX_VALUE;
console.log(max);
num = max + max; //Infinity 正无穷
console.log(num);
// 最小值 Number.MIN_VALUE
var min = Number.MIN_VALUE;
console.log(min);
NaN 是一个特殊的数字,表示Not A Number, 非数值
使用typeof 检查NaN也会返回number
3、数字型计算
在Js中整数的运算基本可以保证精确
如果使用JS进行浮点元素,可能得到一个不精确的结果
var c = 1 + 2;
console.log(c);//3
var d = 0.1 + 0.2; //如果使用JS进行浮点元素,可能得到一个不精确的结果
console.log(d);//0.30000000000000004
4、isNaN()方式
用来判断NaN,并返回一个布尔值,如果判断的是NaN,则返回true,如果判断的不是NaN,则返回false
判断一个值能否被 Number() 合法地转化成数字。
console.log(isNaN(123));//false
console.log(isNaN(NaN));//true
5、typeof 来检查一个变量的类型,并输出
语法:typeof 变量
检查字符串时,会返回string; 检查数值时,会返回number·····
返回的string、number、boolean等值,这些值的类型是string
let a = 'abc'
let b = 123
let c = true
console.log(typeof a);
console.log(typeof b);
console.log(typeof c);
三、字符串String
1.定义字符串
写法1:''
写法2:""
写法3:`` es6写法
优点1:可以换行 优点2:嵌套方便 优点3:嵌套变量方便
2.嵌套变量
var name = "王二麻";
var str = "你好," + name + "!!";
var str="你好,"+name+"!!!!"
var str=`你好,${name}!!!!`
3.转义符 \
\n
换行符,n表示newline的意思
\\
斜杠\
\'
'单引号
\"
"双引号
\t
tab缩进
var str = 'he\tllo';
console.log(str);
4.字符串长度,注意空格也是有长度的
var str = "hello world";
var num = str.length;
console.log(num);
5.字符串拼接
任意类型和字符串相加,得到的都是一个新的字符串
var num1 = 123,
num2 = "123";
var str = num1 + num2;
console.log(str);
console.log(typeof str);
四、布尔值 Boolean
布尔值只有两个值,用来做逻辑判断
true -表示真 false -表示假
使用typeof检查一个布尔值时,会返回boolean
当进行数值运算的时候,true为1,false为0
var flag = true;
flag = flag + 1;//false 转成0 true转成1
console.log(flag);
console.log(typeof flag);
五、未定义 Undefined
Undefined类型的值只有一个,就是undefined
当声明了一个变量,但是并不给变量赋值时,它的值就是undefined
使用typeof检查一个undefined时也会返回undefined
当进行数值运算时,结果为NaN
var un;
console.log(typeof un);
un = un + 1;//undefined做数值运算,返回是NaN
console.log(un);
console.log(typeof un);
六、空值Null
null这个值专门用来表示空的对象
使用typeof检查一个null值时,会返回object
当进行数值运算时,null为0
var abc = null;
console.log(abc); //null
var res=typeof abc
console.log(res); // object
console.log(typeof res);//string
abc = abc + 1;//null在做运算时,会转成0
console.log(abc);