一.基本数据类型介绍
为什么需要有数据类型?
每一种编程语言都有自己的语法规则,在处理数据的时候,也会有自己的规则,不是任何数据都可以处理的。
什么是数据类型?
js编译器在解析代码的时候,会产生各种不同的数据而不同的数据“运算”与“存储” 方式都不同,计算机需
要对这些数据进行分类,称之为数据类型。
有哪些数据类型?
数据类型具体是分为两种分别为基本数据类型和复杂数据类型
(1)基本数据类型有:
boolean-布尔型
string-字符串型
number-数字型
null-空型
undefined-未定义型
bigInt-大整数
symbol-符号性
注:存储在栈中
(2)复杂数据类型有:
object-对象
注:存储在堆中
二.五种基本数据类型
string字符串类型
什么是字符串类型:简单地说就是所有被引号引起来的内容都是字符串类型,引号又分为双引号、单引号、反引号。
例如:
<body>
<script>
"123"
'abc'
`123`//模板字符串
"我说 '123' "//嵌套字符串
</script>
</body>
声明字符串的方式:
//所有引号包含的内容都是字符串
var str = '123'
var str = "abc"
var str = "我说'123'"
注意:单双引号可以互相包含但是单引号不能包含单引号,双引号不能包含双引号
number数字类型
什么是数字类型:一切数学中的数字
例如:
<body>
<script>
123//整数
-123//负数
3.14//小数
Number.MAX_VALUE//最大值
console.log(Number.MAX_VALUE);//最大值结果是:1.7976931348623157e+308(科学认定最大值)
Number.MIN_VALUE//最小值
console.log(Number.MIN_VALUE);//最小值结果是:5e-324
console.log(Number.MAX_VALUE*2);//Infinity
console.log(Infinity)//特殊数值,表示无穷大
let a = 3 - 'a'
console.log(a);//结果为NaN(not a Number 不是一个数)
</script>
</body>
拓展:
<body>
<script>
isNaN()//确实不是一个数,检测是否是数据类型
console.log(isNaN(2));//意思为2不是一个数字 //输出结果false(不是)
console.log(isNaN('aaa'));//意思是aaa不是一个数字//输出结果true(是)
</script>
</body>
但是NaN本身就是一个number值
boolean布尔类型
【布尔类型】:在布尔类型中
ture 表示为真 条件成立
false 表示为假 条件不成立
布尔类型要严格区分大小写
例子:
console.log(true);//正确
console.log(True);//错误
console.log('true');//打印结果与17行是一样的,但是类型不同,17行为布尔类型,19行为字符串。
null空数据类型
【null类型】: 空值 只有一个值
注:null不等于空字符串(' ')或者0;
null与underfined的区别是null表示给变量赋予了空值
而underfined则表示变量没有被赋值
例子:
console.log( null ) //null
var a = null;
console.log(a); //nul1
typeo检测数据类型
【typeo检测数据类型】:简单来说就是检测数据属于什么类型
例如:
<body>
<script>
123
typeof(123)
console.log(123);//123
console.log(typeof(123));//number
'123'
console.log(typeof('123'));//string
'true'
console.log(typeof('true'));//String
true
console.log(typeof(true));//boolean
false
console.log(typeof(false));//boolean
"undefined"
console.log(typeof("undefined"));//String
undefined
console.log(typeof(undefined));//undefined
null
console.log(typeof(null));//object
console.log('aaa'*2);NaN
console.log(typeof(NaN));//number
console.log(typeof('aaa'*2));//number
</script>
</body>