一:数据类型的分类
1:简单数据类型(Number,String,Boolean,Undefined,Null)
2:复杂数据类型(object)
二:简单数据类型
简单数据类型 | 说明 | 默认值 |
---|---|---|
Number | 数字型,包含 整型值和浮点型值 | 0 |
Boolean | 布尔值类型,如 true,false,等价于1和0 | false(0) |
String | 字符串类型,如“张三”,js里面的字符串都带引号 | "" |
Undefined | 如:var a;声明了变量a,但是没有给值,此时a = undefined; | undefined |
Null | var a = null;声明了变量a为空值 | null |
2-1:数字型Number
1.数字型进制
最常见的进制有二进制、八进制、十进制、十六进制
程序的数字0~7前面加0表示八进制;
程序的数字0~9,a~f前面加0x表示十六进制;
2.数字型范围
数字型的最大值:Number.MAX_VALUE
数字型的最小值:Number.MIN_VALUE
3.数字型的三个特殊值
Infinity,代表无穷大,大于任何数值
-Infinity,代表无穷小,小于任何数值
NaN,(Not a number)代表一个非数值
4.isNaN()
isNaN()这个方法用来判断非数字,并且返回一个值
如果是数字返回的是false,如果不是数字,返回的是true.
2-2字符串型String
字符串型可以是引号中的任意文本,其语法为双引号" "和单引号' ',
1.字符串引号嵌套
JS可以用单引号嵌套双引号,或者用双引号嵌套单引号(外双内单,外单内双).
2.字符串转义符
转义符 | 解释说明 |
---|---|
\n | 换行符,n是newline的意思 |
\\ | 斜杠\ |
\' | 单引号' |
\" | 双引号" |
\t | tab缩进 |
\b | 空格,b是blank的意思 |
3.字符串的长度
字符串是由若干字符组成的,这些字符的数量就是字符串的长度,通过字符串的length属性可以获取整个字符串的长度。
字符串的变量名.length
4.字符串的拼接
多个字符串之间可以使用+进行拼接,其拼接方式为:字符串+任何类型=拼接之后的新字符串
拼接前会把与字符串相加的任何类型转换成字符串,再拼接成一个新的字符串
变量不要写到字符串里面,是通过和字符串相连的方式实现的
示例:
var age = 18;
'pink老师age岁'是pink老师age岁
'pink老师' + age + '岁'是pink老师18岁
2-3Boolean类型以及Undefined类型和NULL类型
1.Boolean类型
Boolean类型有两个值:true和false,其中true表示真(对),而false表示假(错)
布尔型和数字型相加的时候,true的值为1,false的值为0。
2.Undefined类型
如果一个变量声明未赋值,就是undefined未定义的数据类型。
undefined+'字符串' = 'undefined字符串'
undefined+数字型变量 = NaN
3.NULL类型
var space = null;
null + '字符串' = 'null字符串'
null + 数字型变量 = 数字型变量
三:获取变量数据类型
1.用typeof来获取检测变量的数据类型
typeof 变量
2.字面量
字面量就是在源代码中一个固定值的表示法,通俗来说,就是字面量表示如何表达这个值
数字字面量:8,9,10;
字符串字面量:'黑马程序员',"大前端";
布尔字面量:true,false;
四:数据类型的转换
使用表单、prompt获取过来的数据默认为是字符串类型的,此时就不能直接简单的进行加法运算,而需要转换变量的数据类型,通俗来说,就是把一种数据类型的变量转换为另外一种数据类型。
常用的3种方式的转换
①转换为字符串类型
方式 | 说明 | 案例 |
---|---|---|
toString() | 换成字符串 | var num=1; alter(num.toString()); |
String()强制转换 | 换成字符串 | var num=1; alter(String(num)); |
加号拼接字符串 | 和字符串拼接的结果都是字符串 | var num=1; alter(num+" "); |
②转换为数字型
方式 | 说明 | 案例 |
---|---|---|
parseInt(string)函数 | 将string类型转换成整数数值型,会去除字符后面的单位 | parseInt("78") |
parselFloat(string)函数 | 将string类型转换成浮点数数值型,也会去除字符后面的单位 | parseFloat("78.21") |
Number()强制转换函数 | 将string类型转换为数值型 | Number("12") |
js隐式转换(-、*、/) | 利用算术运算符隐式转换为数值型 | '12'-0 |
③转换为布尔型
方式 | 说明 | 案例 |
---|---|---|
Boolean()函数 | 其他类型转换成布尔型 | Boolean('true') |
代表空、否定的值会被转换成false,如' '、0、NaN、null、undefined
其余值都会被转换成true。