JavaScript中变量的数据类型

变量数据类型简介

变量是有数据类型的,这个类型来源于“变量的值”,换句话说:值是什么类型的,变量就是什么类型的。

JS中变量的类型有:

数值型、字符型、布尔型、undefined、null、array、object、function

这八种数据类型,又分为两大类


  • 基本数据类型:数值型、字符型、布尔型、未定义型、空型。很显著的特点:一个变量名只能存一个值。

举例:var a = 10;

  • 复合数据类型:数组、对象、函数。显著的特点:一个变量名,可能存多个值。

 举例:var arr = [10,20,30,40]

本节我们介绍基本数据类型,复合数据类型会在之后的章节中详细介绍


数值型:变量能进行数学运算的

数值型包括:整型、浮点型、NaN。
var a = 100;

var a = 0.9;

var a = 0;

注数:值型中还有一个很特殊的值NaN。NaN(not a number)不是一个数字。

当将其它数据类型,转成数值型,转不过去,但程序又不能报错,这时将返回一个NaN的值。

<!DOCTYPE HTML>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <title>php.cn</title>
        <script>
           //现在我们想让一个东西的长度变成原来的10倍
           var length = "300m";
           /*
           一个字符串,是不能转换成有意义的数值的,只能转换成NaN
           一个含纯数字的字符串,可以转成有意义的数值,大家可以修改length为纯数字的字符串,输出查看结果
           */
           length = length*10;
           document.write(length);
        </script>
    </head>
    <body>
    </body>
</html>



字符型:用单引号或双引号,引起来的一个字串。

var a = “这是一个字符串”;

var b = ‘这也是一个字符串’;

var c = “”;

单引号和双引号之间可以相互嵌套

  •  单引号内只能嵌套双引号;

  • 双引号内只能嵌套单引号。

<!DOCTYPE HTML>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <title>php.cn</title>
        <script type="text/javascript">
            var name = "小明";
            //加号为字符串连接符,我们之后会介绍
            var str = "我的名字叫做'" +name+"'"
            document.write(str)
        </script>
    </head>
    <body>
    </body>
</html>

如果想在双引号内,再嵌套双引号,里面的双引号,一定要进行转义(\”)。

JS中的转义字符是反斜杠(\)。

常用的转义字符有:\’、\”、\\、\r、\n等。

也就是,当浏览器遇到反斜杠(\)时,将会对其后的一个字符进行特殊对待,当成普通字符来对待。所谓“普通”字符就是a、b、c、&等。

<!DOCTYPE HTML>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <title>php.cn</title>
        <script type="text/javascript">
            var name = "小明";
            //加号为字符串连接符,我们之后会介绍
            var str = "我的名字叫做\"" +name+"\""
            document.write(str)
        </script>
    </head>
    <body>
    </body>
</html>

布尔型

布尔型又称逻辑型。只有两个值:true(真)、false(假)。

布尔型只有两个状态。如:性别、婚否、灯的开关、是否列入黑名单等。

var a = true;

var b = false;

布尔型常用if条件判断语句中(条件判断语句我们在之后章节介绍,大家先观察结果)

<!DOCTYPE HTML>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <title>php.cn</title>
        <script type="text/javascript">
           var x = 10;
           var y = 110;
           //x>y比较出来的结果是布尔值
           if(x>y){
               document.write(x+"比"+y+"大些");
           }else{
               document.write(y+"比"+x+"大些");
           }
        </script>
    </head>
    <body>
    </body>
</html>



未定义型

当一个变量定义,但未赋值时,将返回未定义型,未定义型的值只有一个undefined。

当一个对象的属性不存在,也返回未定义型。

<!DOCTYPE HTML>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <title>php.cn</title>
        <script type="text/javascript">
           var x;
           document.write(x);
        </script>
    </head>
    <body>
    </body>
</html>



空型

当一个对象不存在时,将返回空型,空型的值只有一个null。

也可以理解为:是一个对象的占位符。

如果你想清除一个变量的值的话,可以给赋一个null的值。

var a = 100;

var a = null ;  //将一个null赋给一个变量,用于清除它的值

<!DOCTYPE HTML>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <title>php.cn</title>
        <script type="text/javascript">
            var x = null;
            document.write(x);
        </script>
    </head>
    <body>
    </body>
</html>



继续学习
||
<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>php.cn</title> <script> //现在我们想让一个东西的长度变成原来的10倍 var length = "300m"; /* 一个字符串,是不能转换成有意义的数值的,只能转换成NaN 一个含纯数字的字符串,可以转成有意义的数值,大家可以修改length为纯数字的字符串,输出查看结果 */ length = length*10; document.write(length); </script> </head> <body> </body> </html>
提交重置代码
章节
笔记
提问
课件
反馈
捐赠

javascript初级教程

高并发千万级数据库系统解决方案
  • 推荐课程
  • 评论
  • 问答
  • 笔记
  • 课件下载

落花微雨

我只想说,我是个菜鸡,但我会坚持学下去。

6年前    添加回复 1

影子

注数:值型中还有一个很特殊的值NaN。NaN(not a number)不是一个数字。 这句话开始写错了吧? 注:数值型。。。。

4年前    添加回复 0

Air张

undefined 实际上是从值 null 派生来的,所以undefined == null 返回true

5年前    添加回复 0

还可以,不错

6年前    添加回复 0

我只是一条咸鱼哈

我就问一下 O不OK?

6年前    添加回复 0

还OK

6年前    添加回复 0

一辆想出轨的无轨电车

现在刚开始还行,比较简单

7年前    添加回复 0

Alway.以为

这些数据类型跟PHP的类型是一样的

7年前    添加回复 0

我喜欢晴天

空型和未定义型好相似啊

7年前    添加回复 0

末日的春天

空类型理解起来

7年前    添加回复 0

橱窗的光

类型好多,有点记不住

7年前    添加回复 0

单引号和双引号嵌套的问题

[最新 nearest 的回答] \为转义字符,它后面跟的符号变成实体输出,这里不再有引号的作用。

时间:6年前

课件暂不提供下载,工作人员正在整理中,后期请多关注该课程~