zoukankan      html  css  js  c++  java
  • null和Undefined的区别

    null==undefined //true

    undefined类型来源于null,null和undefined都是js中只有一个值的数据类型 特殊值分别是null和undefined

    但不同的是 ,

    1.null

    null 表示空对象指针,typeof是object  而且其他语言都有null ,那什么情况会输出null呢

     

    所以只有将变量定义为null时输出null  其他返回虽然是空对象 但可能会返回undefined或者object

     

    所以判断XX值是否为空可以使用 XX==undefined  XX==null(但如果xx是undefined也是对 用===)

    2.undefined

    而undefined是js才有的,申明一个未初始化的变量,得到的是undefined,typeof出来是undefined,undefined的引入是为了区分空指针对象和未初始化的变量,是一个预定义的全局变量。没有返回的函数返回undefined,没有实参的形参也是undefined 。但如果直接alert(age)(age没有申明)会报错,如下:

     

    从技术角度两种变量有本质的区别,但实际上无论是哪种变量都不可能执行真正的操作

    但如果判断未申明的变量的对象输出时undefined,那未初始和未申明在typeof都是输出undefined,那如何来判断这个变量是属于未申明还是未初始化呢?

    所以需要我们显式的初始化变量如var msg = 0;

     

     

     

     

  • 相关阅读:
    今年的第几天?
    特殊乘法
    abc
    求最大最小数
    二叉树遍历
    球的半径和体积
    成绩排序
    OC学习篇之---类的定义
    OC学习篇之---第一个程序HelloWorld
    OC学习篇之---类的初始化方法和点语法的使用
  • 原文地址:https://www.cnblogs.com/theworldofbeisong/p/9158782.html
Copyright © 2011-2022 走看看