引入
按照传统学习理念,我们在学习一门编程语言的时候,总需要了解一些该语言的数据类型,并且掌握定义他们的办法(python比较智能所以相对来说无所谓)
本期要介绍的数据类型大致有:
Number
String
Bool
null和undefined
我将以例子的形式与大家一起过一遍这一基础知识点:
1. 数值Number
JavaScript不区分整数和浮点数,统一用Number表示,下面有一些例子:
12345; // 整数12345 0.45678; // 浮点数0.45678 0.1234e3; // 科学计数法表示0.1234x1000,等同于1234 -10; // 负数 NaN; // NaN表示Not a Number,当无法计算结果时用NaN表示 Infinity; // Infinity表示无限大,当数值超过JavaScript的Number所能表示的最大值时,就表示为Infinity
Number可以直接做运算,最简单的就是四则运算了:
1 + 2; // 3 3 * 5 / 2; // 7.5 2 / 0; // Infinity 0 / 0; // NaN
此外还有求余运算等高级一点的运算:
10 % 3; // 1 10.5 % 3; // 1.5
2. 字符串string
字符串类型用单引号或者双引号括起来的任意文本,比如
`abc` "abc"
请注意,''
或""
本身只是一种表示和定义的方式,不是字符串的一部分,因此,字符串'abc'
只有a
,b
,c
这3个字符。
3. 布尔值bool
布尔值就是大家常见的True和False了。同时布尔值可以用布尔代数表示
1代表True
0代表False
true; // 一个true值 false; // 一个false值 5 > 1; // 5大于1,所以返回一个true值 2 >= 9; // 2不大于等于9,所以返回一个false值
正如上面显示的,布尔值一般用在条件判断中
var age = 15; if (age >= 18) { alert('adult'); } else { alert('teenager'); }
这串经典的条件判断语句块意思就是,赋值一个变量age为15,然后通过条件判断语句if来判断是不是大于等于18(可以看出这是一个成年与否的判断器),如果是大于等于18的输出一个adult字符串,如果不是则输出一个teenager字符串
是不是把前面的内容都串起来了呢?
4. null和undefined
null
表示一个“空”的值
千万不要把它和0
以及空字符串''
搞混了:
0
是一个数值,''
表示长度为0的字符串,而null
表示的是“什么都没有”。
在JavaScript中,还有一个和null
类似的undefined
,它表示“未定义”。和python的未定义类似,你如果在python里调用了一个没有赋值过的变量,就会得到undefined未定义报错。js也是,你调用了没定义的函数,那就也会得到undefined提示
其实区分两者的意义不大。大多数情况下,我们见到的都是null
。
最后祝大家学习顺利