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>

结果:
在这里插入图片描述
支持十六进制和八进制:
十六进制以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类有如下基本方法和属性操作字符串:
在这里插入图片描述
在这里插入图片描述
测试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>

结果:
在这里插入图片描述
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>

结果:
在这里插入图片描述

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>

结果:
在这里插入图片描述
三、布尔类型
布尔类型的值只有两个:true和flase。布尔类型的值通常是逻辑运算的结果,或者用于标识对象的某种状态。

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

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

五、正则表达式
正则表达式的本质是一种特殊字符串,并且其允许使用“通配符”,因此一个正则表达式字符串可以匹配一批普通字符串。
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值