zoukankan      html  css  js  c++  java
  • js基础回顾-数据类型和typeof怎么用

     js的基本数据类型有六种,undefined、null、number、string、boolean、object.

                未定义        空      数字        字符串    布尔       对象

    特别注意:

    ①什么时候值是undefined? 

    声明变量但是没有赋值比如var a;和没有声明的变量,用typeof检测都是undefined

    ②""和null一样么?

    在类型上当然是不一样啊,一个是空字符串,一个是空对象哦  如果null==""判断,那一定是false

    null代表对象没有进行实例化

    ""代表对象已经实例化了,实例了一个空的字符串

    ③null==undefined 为什么是true?

     因为undefined派生自null,ecma-262规定对他们进行相等性测试要返回true,目的是为了兼容老的网站。

    ④因为声明变量但是没有赋值比如var a;和没有声明的变量,都是undefined,undefined的报错的情况下你不知道是定义的还是没定义的变量

    不赋值的情况下,初始化变量上要var a = null;再报undefined的错误那就是你没定义这个变量了。

    typeof是检测数据类型用的

    var a="sdfds";
    typeof a;
    typeof(a);//这里两种书写方式是一样的
    var a = ""var b=nullvar c;
    var d=funciton(){};
    var e= new Object();
    
    typeof a;// string
    typeof b;//object
    typeof c;//undefined
    typeof d;//funciton
    typeof e;//object

    typeof 检测null返回的是object,因为null表示一个空对象指针,所以用typeof判断是不是null类型不可行

    function在数据类型里面是object,所以用typeof可以判断是不是function。

  • 相关阅读:
    linux下mysql的root密码忘记解决方法
    基于NIO2的遍历文件夹简单复制
    bootstrap插件bootstrapValidator常用验证规则总结
    《程序员修炼之道》-读书笔记六-工厂模式下的伪DI依赖注入
    cpu 突增问题排查
    一次线上OOM 的定位
    熔断、限流、降级的区别
    Mac 下 idea 在同一个窗口下打开多个项目
    No operations allowed after connection closed
    java 死锁演示
  • 原文地址:https://www.cnblogs.com/wufangfang/p/6993658.html
Copyright © 2011-2022 走看看