JavaScript

JavaScript中的数据类型和对象类型以及typeof运算符的使用

一7种数据类型

1 js中有7种数据类型
  • string
  • number
  • object
  • boolean
  • function
  • null
  • undefined
2 js中可以存放数据的5种数据类型
  • function
  • string
  • number
  • object
  • boolean
3js中不可以存放数据的2种数据类型
  • null
  • undefined

二 6种对象类型

  • Number
  • String
  • Boolean
  • Date
  • Object
  • Array

这里的对象类型和数据类型的对比关系,有一点儿类似于Java中的包装类和基本数据类型之间的对比关系。

三 typeof运算符的使用

<!DOCTYPE html>
<html lang="en">
<head>
    <!--@Author:asher
    @Date:2021/7/11 14:17   -->
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h2>The JavaScript typeof operator</h2>
<p>The typeof operator returns the type of a variable,object,function or expression.</p>
<p id="demo"></p>
<script>
    document.getElementById('demo').innerHTML=
        typeof 'Jonh'+"<br>"+
            typeof 3.14 +"<br>"+
            typeof NaN+"<br>"+
            typeof false+"<br>"+
            typeof [1,2,3]+"<br>"+
            typeof {name:'john',age:33}+"<br>"+
            typeof new Date()+"<br>"+
            typeof function f(){}+"<br>"+
            typeof null+"<br>"+
            typeof myCar+"<br>"
</script>

</body>
</html>

注意,注意:JS中,

数组的数据类型是object;

null的数据类型是object;

date的数据类型是object;

NaN的数据类型是number;

function的数据类型是function;

未定义的变量的数据类型是undefined;

变量定义了,但是未赋值的变量,其数据类型是undefined;

另外:我们不可以使用typeof来判断某个JavaScript 对象是不是一个数组,或者是不是一个date?

怎么理解呢?因为,假定typeof a1/d1的结果是object。这时,我们不能说a1或者d1就是一个数组,因为如果它们是date的话,其结果也是object。

四参考链接

https://www.w3schools.com/js/js_typeof.asp

留言