1.数字类型 Number
当一个数字直接出现在js程序中,我们称之为数字直接量。
在任何数字直接量之前添加(-)可以的到它的负值,但负号是一元求反运算符,并不是直接量语法的组成部分。
按照js的数字格式,能表示的整数范围是-2^53~2^53,包含边界值,如果使用超出此范围的整数则无法保证低位数字的精度。
小数进行数学计算时会有误差,为计算机本身问题。
NaN 和isNaN()
即Not a Number 不是一个数字,是一个特殊的值。
是数学计算错误得到的一个值,它与任何数包括它本身都不相等。
isNan()函数可以接受一个参数,参数可以是任何类型,帮我们确定是否为 ‘不是数值’
isNaN()在接收一个值后,会尝试将这个值转化为数值,某些不是数值的值会被转换为数值 如“12” 、true、false、空格、null。
2.字符串类型 string
在js中字符串直接变量,是由单引号或双引号括起来的字符序列。
转义字符(\)反斜杠后加字符,就不在表示他们的字面含义了,例如 \n 表示换行,\" 表示双引号。
3.布尔值 Boolean
布尔值只有两个值 true真 和 false假。
在其他值转为布尔值是只有 “false、空字符、0、NaN、null、undefined”六个值会得到false,其他值都为true。
4.null
需要手动赋值的,常用来描述 空值。
5.undefined
未定义 使用var声明却未对其初始化而返回的结果。
typeof 操作符
typeof关键字用来检测数据所属类型,用法如下:
typeof 数据; 或者 typeof(数据);
变量 variable
声明方法:(1).var 变量名; (2).var 变量名=值; (3).var 变量名1=值, 变量名=值, 变量名=值, .....;
注:变量名只能以下划线,字母,$开头,不要用js里内置的关键字和保留字。
数据类型转换
1.隐式转换
转换为string类型,+号两边有一边为字符串,则会把另一边也转为字符串进行拼接。
转为number类型,以下情况会先转为number类型再进行运算,若无法转换则显示NaN:
(1)数据前加+号,如 + “5” 会转化为数字5 。
(2)当+或-在一个数字前则表示正负号。
(3)若是有运算和比较,则先运算再比较。
转为boolean类型,逻辑非(!)会将数据转化为布尔类型。
2.其他类型转换为number型
(1)parseInt(); 转整数,从左至右解析遇非数字停止。空字符串转化为NaN。
(2)parseFloat();转小数,可以解析第一个小数点。空字符串转化为NaN。
(3)Number();布尔转为数字,转换的字符串中只要有一个不是数字(第一个小数点除外)则显示NaN。空字符串转化为0 。
3.其他类型转化为string类型
(1)String();
(2)数据.toString();遇到undefined或null会报错。
4.其他类型转为boolean类型
(1)Boolean();只有 false、空字符、0、NaN、null、undefined 会得到false,其他的数据皆为true。