JavaScript数据类型
Posted 橘猫吃不胖~
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript数据类型相关的知识,希望对你有一定的参考价值。
javascript数据类型
1 变量的数据类型
JavaScript是一种弱类型语言,不用提前声明变量的数据类型。在程序运行过程中,变量的数据类型会被自动确定。
强类型语言:如:Java、C
弱类型语言:如:JavaScript
2 数据类型分类
JavaScript中的数据类型分为两大类,基本数据类型和复杂数据类型(也称为引用数据类型)。
3 数字型
JavaScript中的数字型可以用来保存整数或浮点数(小数)。
var age = 18; // 整数
var pi = 3.14; // 浮点数(小数)
常见的进制:
八进制数:在数字开头加上0,八进制数由0~7组成,逢8进位
十进制数:是组成以10为基础的数字系统,有0~9组成,逢10进位
十六进制数:在数字开头加上0x,十六进制数由0 ~ 9,a ~ f组成
范围:数字型的最大值和最小值:
最大值:Number.MAX_VALUE,输出结果:1.7976931348623157e+308
最小值:Number.MIN_VALUE,输出结果:5e-324
数字型的3个特殊值:Infinity和- Infinity 和NaN,举例:
Infinity(无穷大) :如Number.MAX_VALUE2
-Infinity(无穷小) :如-Number.MAX_VALUE2
NaN(非数值): 如’abc’ – 100
isNaN:用来判断一个变量是否为非数字的类型,返回值为true表示非数字,false表示是数字
4 字符串型
字符串是指计算机中用于表示文本的一系列字符,在JavaScript中使用单引号或双引号来包裹字符串。
var str1 = '单引号字符串';
var str2 = "双引号字符串";
4.1 单、双引号嵌套:
在单引号字符串中可以直接书写双引号
在双引号字符串中也可以直接书写单引号
var str1 = 'I am a "programmer"';
var str2 = "I'm a 'programmer'";
将以上语句输出,结果如下:
错误用法:
var str1 = 'I'm a programmer'; // 单引号错误用法
var str2 = "I'm a "programmer""; // 双引号错误用法
var str3 = 'I am a programmer"; // 单双引号混用
4.2 转义符
转义符:在字符串中使用换行、Tab等特殊符号时,可以用转义符来进行转义,转义符以“\\”开始。常见转义符见下表。
转义符 | 解释说明 |
---|---|
\\’ | 单引号 |
\\" | 双引号 |
\\n | LF换行,n表示newline |
\\v | 跳格(Tab、水平) |
\\t | Tab符号 |
\\r | CR换行 |
/f | 换页 |
\\\\ | 反斜线(\\) |
\\b | 退格,b表示blank |
\\0 | Null字节 |
xhh | 由2位十六进制数字hh表示的ISO-8859-1字符。如“\\x61”表示“a” |
\\uhhhh | 由4位十六进制数字hhhh表示的Unicode字符。如“\\u597d”表示“好” |
4.3 字符串长度
字符串是由若干字符组成的,这些字符的数量就是字符串的长度。通过字符串的length属性可以获取整个字符串的长度。
var str1 = 'I\\'m a programmer';
console.log(str1.length); // 获取str1的长度
结果为16
4.4 访问字符串中的字符
字符串可以使用“[index]”语法按照index(索引)访问字符,index从0开始,一直到字符串的长度减1,如果超过了index最大值,会返回undefined。
var str = 'I\\'m a programmer';
console.log(str[0]); // 输出结果:I
console.log(str[1]); // 输出结果:'
console.log(str[15]); // 输出结果:r
console.log(str[16]); // 输出结果:undefined
4.5 字符串拼接
多个字符串之间可以使用“+”进行拼接,如果数据类型不同,拼接前会把其他类型转成字符串,再拼接成一个新的字符串。
var str = 'I\\'m a programmer';
console.log('a' + 'b'); // ab
console.log('a' + 18); // a18
console.log('_' + true); // _true
console.log('12' + 14); // 1214
console.log(12 + 14); // 两个数字相加,结果为26
4.6 “显示年龄”案例
弹出一个输入框,让用户输入年龄。输入后,单击“确定”按钮,程序弹出来一个警告框,显示内容为“您今年x岁了”,x表示刚才输入的年龄。
var age = prompt('请输入您的年龄'); // 弹出一个输入框,让用户输入年龄
var msg = '您今年' + age + '岁了'; // 将年龄与输出的字符串拼接
alert(msg);// 弹出警告框,输出程序的处理结果
5 布尔型
布尔型通常用于逻辑判断,它有两个值:true和false,表示事物的“真”和“假”,其中true的值为1,false的值为0。
console.log(true); // 输出结果:true
console.log(false); // 输出结果:false
console.log(true + 1); // 输出结果:2
console.log(false + 1); // 输出结果:1
6 undefined和null
如果一个变量声明后没有赋值,则变量的值就是undefined。下面通过代码演示undefined的使用。
console.log(true); // 输出结果:true
var a;
console.log(a); // 输出结果:undefined
console.log(a + '_'); // 输出结果:undefined_(字符串型)
console.log(a + 1); // 输出结果:NaN
当然也可以给一个变量赋一个null值,下面通过代码演示null值的使用。
var b = null;
console.log(b + '_'); // 输出结果:null_(字符串型)
console.log(b + 1); // 输出结果:1(b转换为0)
console.log(b + true); // 输出结果:1(b转换为0,true转换为1)
7 数据类型检测
可以利用typeof运算符进行数据类型检测。
console.log(typeof 12); // 输出结果:number
console.log(typeof null); // 输出结果:object
var a = '12';
console.log(typeof a == 'string'); // 输出结果:true
字面量,简单来说,就是用字面量来表示如何在代码中表达这个值,通过字面量,我们可以很容易地看出来它是哪种类型的值。例如数字字面量:7、8;布尔字面量:true、false等。
以上是关于JavaScript数据类型的主要内容,如果未能解决你的问题,请参考以下文章
VSCode自定义代码片段12——JavaScript的Promise对象