JS基本数据类型

(3) 2024-07-27 15:12

Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说
JS基本数据类型,希望能够帮助你!!!。

基本数据类型有如下五个:
1、数值类型:包含整数或浮点数
2、布尔类型:只有true或false两个值
3、字符串类型:字符串变量必须用引号括起来,单、双引号都可以
4、undefined类型:专门用来确定一个已经创建但是没有初值的变量
5、null类型:用于表明某个变量的值为空

一、数值类型
支持科学计数法:
E2代表10的2次方;e-3代表10的-3次方;E不区分大小写;如果数值只有小数部分,则可以省去整数部分的0,但是小数点不能省略。
例:

<script type="text/javascript"> var a,b; a = 5E2; b = 1.23e-3; alert(a + "\n" + b); </script> 

结果:
JS基本数据类型_https://bianchenghao6.com/blog__第1张
支持十六进制和八进制:
十六进制以0X或0x开头,就以上的数用a~f表示;八进制以0开头,八进制中只能出现0 ~7数值。

当数值变量的值超出了一定范围的时候,就会出现两个特殊值:Infinity(正无穷大)和-Infinity(负无穷大)。
-Infinity加一个普通数值还是-Infinity;
-Infinity乘一个普通数值还是-Infinity;
-Infinity减一个普通数值还是-Infinity;
-Infinity加一个Infinity会得到NaN。
两个Infinity的值总是相等的;不管是3e30000还是5e20000都是Infinity,虽然值不等,但是都超过了一定的范围,变成了Infinity,就相等了。(JavaScript中算术运算允许除数为0,0÷0=NaN;正数除0为Infinity;负数除0为-Infinity)

NaN是一个特殊的值它是Not a Number的首字母,表示非数;NaN不会与任何数值变量相等,就是说NaN==NaN返回false,用isNaN()函数来判断是否为NaN。

二、字符串类型
Javascript以String内建类来表示字符串,String类里包含了一系列方法操作字符串,String类有如下基本方法和属性操作字符串:
JS基本数据类型_https://bianchenghao6.com/blog__第2张
JS基本数据类型_https://bianchenghao6.com/blog__第3张
测试String类的几个简单属性和方法:

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> </head> <body> <script type="text/javascript"> var a= "abc中国"; var b= a.length; var c= String.fromCharCode(97,98,99); alert(b+ "---" + a.charAt(4) + "---" + a.charCodeAt(4) + "---" + c); </script> </body> </html> 

结果:
JS基本数据类型_https://bianchenghao6.com/blog__第4张
indexOf(searchString[,startIndex]):搜索目标字符串searchString出现的位置。其中startIndex指定不搜索左边startIndex个字符。
lastIndexOf(searchString[,startIndex]):搜索目标字符串searchString最后一次出现的位置如果字符串中没有包含目标字符串,则返回-1.

substring(start[,end]):从start(包括)索引处,截取到end(不包括)索引处,不截取end索引处的字符。如果没有end参数,将从start处一直截取到字符串尾。
slice(start[,end]):与substring()的功能基本一致,区别是可以接受负数为索引,当索引为负数时,从字符串的右边开始计算。

例:

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> </head> <body> <script type="text/javascript"> var s ="abcdefg"; a= s.slice(0,4) b= s.slice(2,4) c= s.slice(4) d= s.slice(3,-1) e= s.slice(3,-2) f= s.slice(-3,-1) alert("a:" +a+ "\nb : " + b + "\nc : " + c + "\nd : " + d + "\ne : " + e + "\nf : " + f ); </script> </body> </html> 

结果:
JS基本数据类型_https://bianchenghao6.com/blog__第5张

match()和search()方法都支持使用正则表示式作为子串;区别是前者返回匹配的子字符串,后者返回匹配的索引值。match()支持使用全局匹配,通过g标志来表示全局匹配,match()方法返回所有匹配正则表达式的子串所组成的数组。
match()方法的返回值为字符串数组或null,如果包含匹配值,将返回字符串数组;否则返回null。search()返回值为整形变量,如果搜索到匹配子串,则返回子串的索引值;否则返回-1。

例:

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> </head> <body> <script type="text/javascript"> var s = "abfd--abc@d.comcdefg"; a= s.search(/[a-z]+@d.[a-zA-Z]{ 
   2}m/); var str = "1dfd2dfs3df5"; var b= str.match(/\d/g); alert(a+ "\n" + b); </script> </body> </html> 

结果:
JS基本数据类型_https://bianchenghao6.com/blog__第6张
三、布尔类型
布尔类型的值只有两个:true和flase。布尔类型的值通常是逻辑运算的结果,或者用于标识对象的某种状态。

四、undefined和null
undefined的值只有一个undefined,表示某个变量不存在或者没有初始化赋值,也表示对象的属性不存在。null表示变量的值为空。
如果不精确比较:null==undefined;

如果精确比较:null===undefined,返回值为flase

五、正则表达式
正则表达式的本质是一种特殊字符串,并且其允许使用“通配符”,因此一个正则表达式字符串可以匹配一批普通字符串。
JS基本数据类型_https://bianchenghao6.com/blog__第7张
JS基本数据类型_https://bianchenghao6.com/blog__第8张

今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

上一篇

已是最后文章

下一篇

已是最新文章

发表回复