当前栏目
【JavaScript速成之路】JavaScript数据类型
📃个人主页:「小杨」的csdn博客
🔥系列专栏:【JavaScript速成之路】
🐳希望大家多多支持🥰一起进步呀!
文章目录
前言
📜前言:小杨在上一篇带着大家一起学习了JavaScript中的变量,想必大家对JavaScript变量已经有所了解了,那么今天我们将继续带着大家学习一下JavaScript中的数据类型的相关知识,希望大家收获多多!
1,变量的数据类型
1.1,强类型语言
强类型语言是一种强制类型定义的语言,要求变量的使用要严格符合定义,所有变量都必须先定义后使用。即一旦某一个变量被定义类型,如果不经强制转换,那么它永远就是该数据类型
强类型语言包括:Java、.net、Python、C++等语言。
int num = 10; //定义变量num为整型,不经强转,永远为该类型
1.2,弱类型语言
弱类型语言是一种弱类型定义的语言,某一个变量被定义类型,该变量可以根据环境变化自动进行转换,不需要经过现行强制转换。
弱类型语言包括:VB,PHP,JavaScript等语言。
var num = 10; //定义变量num为数字型
num = 'abc'; //赋值num为abc字符串,此时num为字符串型
2,数据类型的分类
数据类型可分为普通数据类型和引用数据类型两大类,数据类型分类图如下:
2.1,普通数据类型
1)数字型(Number)
数字型包含整型值和浮点型值
var num1 = 10; //整型值
var num2 = 10.0; //浮点型值
2)布尔型(Boolean)
布尔型包含了true和false两个布尔值
var bool1 = true; //true 表示真,1,成立
var bool2 = false; //false表示假,0,不成立
3)字符串型(String)
字符串型用单引号和双引号包裹
var str1 = ''; //空字符串
var str2 = 'abc'; //单引号包裹字符串abc
var str3 = "sbc"; //双引号包裹字符串abc
4)未定义型(Undefined)
未定义型只有一个值undefined
var a; //声明变量a,未赋值,此时a就是undefined
var b = undefined; //声明变量b,并赋值为undefined
5)定型(Null)
定型只有一个值null
var a = null; //声明变量a,并赋值为null
注意:代码中的true,false,undefined和null全部都要写成小写字母。
2.2,引用数据类型
引用类型,也被称为复杂数据类型,在存储时变量中存储的仅仅是地址(引用),通过new关键字创建的对象(系统对象、自定义对象)。
1)Object对象
<script>
var obj = new Object(); //创建Object对象,并通过obj变量保存对象的引用
</script>
2)Data对象
<script>
var date = new Date(); //创建Date对象,并通过date变量保存对象的引用
</script>
3,数据类型的介绍
3.1,数字型
JavaScript中的数字型可以用来保存整数和浮点数,示例如下:
var num1 = 19; //整数
var num2 = 19.0; //浮点数(小数)
数字型在使用时,有如下一些细节问题需要我们注意:
1)进制
在一般情况下,数字型都是使用十进制来表示的,在JavaScript中还可以使用八进制和十六进制,但输出是以十进制输出的。
1,八进制数:
- 在数字开头加上0,表示八进制数。
- 八进制数由0~7组成,逢8进位。
为了更好地理解八进制数的使用,示例如下:
var num1 = 07;
console.log(num1); //输出为7
var num2 = 010;
console.log(num2); //输出为8
2,十六进制数:
- 在数字开头加上0x,表示十六进制数。
- 十六进制数由09,af组成,并且x,a~f不区分大小写。
为了更好地理解十六进制数的使用,示例如下:
var num1 = 0x8;
console.log(num1); //输出为8
var num2 = 0xa;
console.log(num2); //输出为10
2)范围
数字型的取值是有范围的,其的最大值和最小值可以用下述代码获取:
<script>
console.log(NUmber.MAX_VALUE);
console.log(NUmber.MIN_VALUE);
</script>
代码结果:
注意:在输出结果中是通过采用科学计数法来表示数字。
3)特殊值
数字型有3个特殊值,分别是Infinity(无穷大),-Infinity(无穷小)和NaN(Not a Number,非数值)。
<script>
console.log(Number.MAX_VALUE * 2);
console.log(-Number.MAX_VALUE * 2);
console.log('abc' - 18);
</script>
代码结果:
小知识:若想要判断一个变量是否为非数字的类型,可以使用isNaN()来进行判断,返回值为一个布尔值,返回true表示是非数字,false表示是数字。
为了更好地理解isNaN
的使用,示例如下:
<script>
console.log(isNaN(12));
console.log(isNaN('abc'));
</script>
示例结果:
3.2,字符串型
var str1 = '单引号字符串';
var str2 = "双引号字符串";
1)单,双引号嵌套
单双引号嵌套使用原则:在单引号字符串中直接书写双引号,在双引号字符串中直接书写单引号,不可错用。
为了更好地理解单双引号的使用,示例如下:
<script>
var str1 = 'I am a "student"';
console.log(str1);
var str2 = "I'm a 'student'";
console.log(str2);
</script>
示例结果:
2)转义符
在字符串中使用换行,Tab等特殊符号时,可以使用转义符来进行转义。
转义符都是以“”开始的,常见的转义符如下:
转义符 | 解释说明 |
---|---|
’ | 单引号 |
" | 双引号 |
LF换行,n表示newline | |
v | 跳格(Tab,水平) |
Tab符号 | |
CR换行 | |
f | 换页 |
\ | 反斜线 |
退格,b表示blank | |