js基础–数据类型
(1)基本数据类型
Number类型
数值字面量:数值的固定值的表示法,例如110,1024,60.5
十进制
var num = 9;//八进制和十六进制表示的数值最终都被转换成十进制数值。
###十六进制
var num = oxA; //数字序列范围:0~9以及A~F
八进制
var num1 = 07;//对应十进制的7
var num2 = 011;对应十进制的9
var num3 =021;对应的十进制的17//数字序列范围:0~7
如果字面量值中的数值超出了范围,那么前导将被忽略,后面的数值将被当作十进制数值解析
浮点数
var n = 5e-5; // 科学计数法 5乘以10的-5次方
浮点数值的最高精度是17位小数,但在进行算术计算时其精确度远远不如整数
var result = 0.1 + 0.2; // 结果不是0.3,而是:0.30000000000000004
console.log(0.07 * 100);
注意:不要判断两个浮点数是否相等
就是说由于0.1转换成二进制时是无限循环的,所以在计算机中0.1只能存储成一个近似值
最小值:Number.MIN_VALUE,这个值为: 5e-324
最大值:Number.MAX_VALUE,这个值为: 1.7976931348623157e+308
无穷大:Infinity
无穷小:-Infinity
数值判断
NaN:not a number (可以通过Number()方法判断)
NaN与任何值都不相等,包括他本身
isNaN(): is not a number (如果 x 是特殊的非数字值 NaN(或者能被转换为这样的值),返回的值就是 true。如果 x 是其他值,则返回 false)
String类型
字符串可以使用单引号,也可以使用双引号,例如:'abc'、"abc"。
字符串字面量:‘I am Happy’、”Hello World”
字符串长度
length属性用来获取字符串的长度
var str = '美女 Hello World';
console.log(str.length);
字符串拼接
字符串拼接使用 + 连接
console.log(11 + 11);
console.log('hello' + ' world');
console.log('100' + '100');
console.log('11' + 11);
console.log('male:' + true);
两边只要有一个是字符串,那么+就是字符串拼接功能
两边如果都是数字,那么就是算术功能。
语言具有隐式转换(隐式类型转换就是指,数据的类型在不用人工干预的情况下进行转换的行为,原因:js是一门弱类型(动态类型)的语言,他在声明变量的时候不需要指定类型,对变量赋值也没有类型的检测,所以js是非常的灵活的,)
Boolean类型
Boolean字面量: true和false,区分大小写
计算机内部存储:true为1,false为0
Undefined 和Null
undefined表示一个声明了没有赋值的变量,变量只声明的时候值默认是undefined
null表示一个空,变量的值如果想为null,必须手动设置