JavaScript(数据类型)
一、数据类型
1.概述
为了便于把数据分成所需内存大小不同的数据,充分利用存储空间,于是定义了不同的数据类型。
2.变量的数据类型
JS的变量数据类型是只有程序在运行过程中,根据等号右边的值来确定的
3.数据类型的分类
数据类型分为两类:
简单数据类型(Number,String,Boolean,Undefined,Null)
简单数据类型 | 说明 | 默认值 |
Number | 数字型,包含整型值和浮点型值 | 0 |
Boolean | 布尔值类型 | false |
String | 字符串类型 | "" |
Undefined | var a;声明了变量a但没有给值,此时a = undefined | undefined |
Null | var a = null;声明了变量a为空值 | null |
①.数字型Number
数字类型既可以用来保存整数值,也可以保存小数(浮点数)
1.1数字型进制
程序中数字前面加0 表示八进制
程序中数字前面加0x 表示十六进制
1.2数字型范围
最大值、最小值
1.3数字型三个特殊值
1.4 isNaN
用来判断非数字,并且返回一个值 如果是数字返回的是false,如果不是数字返回true
②.字符串类型String
字符串型可以是引号中的任意文本,其语法为双引号"" 和 单引号''
2.1字符串引号嵌套
外双内单,外单内双
2.2字符串转义符
转义符都是\开头的
转义符 | 解释说明 |
\n | 换行符,n是newline |
\\ | 斜杠\ |
\' | ' 单引号 |
\" | " 双引号 |
\t | tab 缩进 |
\b | 空格,b是blank |
2.3字符串长度
字符串是由若干字符组成的,这些字符的数量就是字符串的长度。通过字符串的length属性可以获取整个字符串的长度。
2.4字符串拼接
- 多个字符串之间可以使用+进行拼接,其拼接方式为字符串+任何类型=拼接之后的新字符串
- 拼接前会把与字符串相加的任何类型转成字符串,再拼接成一个新的字符串
口诀:数值相加,字符相连
③.布尔型Boolean
布尔类型有两个值:true和false
④.undefined和null
复杂数据类型(object)
获取变量数据类型
1.获取检测变量的数据类型
typeof用来获取检测变量的数据类型
prompt取得值是字符型
2.字面量
固定值的表示法
- 数字字面量:1,2
- 字符串字面量:‘abc’
- 布尔字面量:true,false
数据类型的转换
把一种数据类型的变量转换成另外一种数据类型
1.转换为字符串类型
方式 | 说明 | 案例 |
toString() | 转成字符串 | var num = 1;alert(num.toString()); |
String()强制转换 | 转成字符串 | var num = 1;alert(String(num)); |
加号拼接字符串 | 和字符串拼接的结果都是字符串 | var num = 1;alert(num+"字符串"); |
转换为数字型
方式 | 说明 | 案例 |
parselnt(string)函数 | 将string类型转成整数数值型 | parselnt('78') |
parseFloat(string)函数 | 将string类型转成浮点数数值型 | parseFloat('11.11') |
Number()强制转换函数 | 将string类型转成数值型 | Number('11') |
js隐式转换(- * / ) | 利用算数运算隐式转换为数值型 | '11'-0 |
转换为布尔型
方式 | 说明 | 案例 |
Boolean()函数 | 其他类型转成布尔值 | Boolean('true); |
代表空、否定的值会被转换为false,如:''、0、NaN、null、undefined
其余值都会被转换为true
标识符、关键字、保留字
1.标识符:开发人员为变量、属性、函数、参数取的名字。
标识符不能是关键字或保留字。
2.关键字:JS本身已经使用了的字,不能再用它们充当变量名、方法名。
包括:break、case、catch、continue、default、delete、do、else、finally、for、function、if、in、instanceof、new、return、switch、this、throw、try、typeof、var、void、while、with
3.保留字:预留的“关键字”
包括:boolean、byte、char、class、const、debugger、double、enum、export、extends、fimal、float、goto、implements、import、int、interface、long、mative、package、private、protected、public、short、static、super、synchronized、throws、transient、volatil