数据类型
简单数据类型
Number、String、Boolean、Undefined、Null
Number类型
-
数值字面量:数值的固定值的表示法
110 1024 60.5
-
浮点数
- 浮点数的精度问题
//浮点数
var n = 5e-324; // 科学计数法 5乘以10的-324次方
//浮点数值的最高精度是 17 位小数,但在进行算术计算时其精确度远远不如整数
var result = 0.1 + 0.2; // 结果不是 0.3,而是:0.30000000000000004
console.log(0.07 * 100);
//不要判断两个浮点数是否相等
- 数值范围
//最小值:Number.MIN_VALUE,这个值为: 5e-324
//最大值:Number.MAX_VALUE,这个值为: 1.7976931348623157e+308
//无穷大:Infinity
//无穷小:-Infinity
-
数值判断
- NaN:not a number
- NaN 与任何值都不相等,包括他本身
- isNaN: is not a number
- NaN:not a number
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>number类型</title>
</head>
<body>
<script>
/*
* number类型:整数和浮点数(小数);
* var num = 20;
* var num2 = 20.20(浮点数);
* */
//数字类型的范围:最小值和最大值
console.log(Number.MAX_VALUE);//最大值
console.log(Number.MIN_VALUE);//最小值
//不要判断两个浮点数相等
var x = 0.1;
var y = 0.2;
console.log(x + y);
var num;
console.log(num + 10);//NaN => not a number
//不要使用NaN验证NaN
// ==是等于的意思; =是赋值的意思,如果相等,会返回true
console.log(num + 10 == NaN);
console.log("你好" == "您好");
//如何验证这个结果是不是NaN,应该使用isNaN(变量名)
//是不是不是一个数字=>这不是一个数字,对吗?是对的
console.log(isNaN(num));//true
var num2 = 100;
console.log(isNaN(num2));//不对,false
//总结:判断是不是一个数字,可以使用isNaN(变量名)
</script>
</body>
</html>
String类型
‘abc’ “abc”
-
字符串字面量
-
转义符
-
字符串长度
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);
- 两边只要有一个是字符串,那么+就是字符串拼接功能
- 两边如果都是数字,那么就是算术功能。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>string类型</title>
</head>
<body>
<script>
/*
* 字符串的长度:变量名.length
* */
// var str = "what are you -+./%4doing?";
// console.log(str.length);
//
// //html的转义符:< > ...
// console.log("哈哈\"哈哈")
//字符串拼接:使用+把多个字符串拼接在一起
var str1 = "小明";
var str2 = "小红";
console.log(str1 + str2);
var s1 = "10";//字符串
var s2 = 20;
console.log(s1 + s2);
</script>
</body>
</html>
Boolean类型
- Boolean字面量: true和false,区分大小写
- 计算机内部存储:true为1,false为0
Undefined和Null
- undefined表示一个声明了没有赋值的变量,变量只声明的时候值默认是undefined
- null表示一个空,变量的值如果想为null,必须手动设置 var f = null
复杂数据类型
Object
获取变量的类型
typeof
var age = 18;
console.log(typeof age); // 'number'
字面量
在源代码中一个固定值的表示法。
数值字面量:8, 9, 10
字符串字面量: “大前端”
布尔字面量:true,false