JS技术

Javascript教程:Undefined类型_Javascript教程

字号+ 作者:H5之家 来源:H5之家 2015-09-17 14:38 我要评论( )

Javascript教程:Undefined类型,学习Javascript教程:Undefined类型,Javascript教程:Undefined类型,查看Javascript教程:Undefined类型,Javascript学习技巧教程

Javascript学习技巧教程:Undefined类型


    Undefined类型只有一个值,即特殊的undefined。在使用var声明变量但未对其加以初始化时,这个变量的值就是undefined,例如:

var message; alert(message == undefined); //true

这个例子只声明了变量message,但未对其进行初始化。比较这个变量与undefined字面量,结果表明它们是相等的。这个例子与下面的例子是等价的:

var message = undefined; alert(message == undefined); //true

这个例子使用undefined值显式初始化了变量message。但我们没有必要这么做,因为未经初始化的值默认就会取得undefined值。

不过,包含undefined值的变量与尚未定义的变量还是不一样的。看看下面的例子:

var message; //这个变量声明之后默认取得了undefined值 alert(message); //“undefined” alert(age); //发生错误

   运行上面的代码,第一个警告框会显示变量message的值,即“undefined”。而第二个警告框——由于传递给alert()函数的是尚未声明变量age——则导致一个错误。对于尚未声明过的变量,只能执行一项操作,即使用typeof操作符检测其数据类型。

   然而,对于未初始化的变量执行typeof操作符会返回undefined值,而对未声明的变量执行typeof操作符同样也会返回undefined值。来看下面的例子:

var message; alert(typeof message); //“undefined” alert(typeof age); //“undefined”

   结果表明,对未初始化和未声明的变量执行typeof操作符都返回了undefined值;这个结果有其逻辑上的合理性。因为虽然这两种变量从技术上角度看有本质区别,但实际上无论对那种变量也不可能执行真正的操作。

     即便未初始化的变量会自动赋予undefined值,但我们任然建议读者养成显式初始化变量(即在声明变量的同时给变量赋值)的习惯。如果能够做到这一点,那么当typeof操作符返回undefined值时,我们就知道被检测的变量是有还是没有被声明的,而不是尚未初始化的了。

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • JavaScript入门教程(二)_javascript教程教程

    JavaScript入门教程(二)_javascript教程教程

    2015-10-10 14:25

  • JavaScript入门教程(五)_javascript教程教程

    JavaScript入门教程(五)_javascript教程教程

    2015-10-10 14:21

  • JavaScript入门教程(四)_javascript教程教程

    JavaScript入门教程(四)_javascript教程教程

    2015-10-10 14:19

  • JavaScript入门教程(三)_javascript教程教程

    JavaScript入门教程(三)_javascript教程教程

    2015-10-10 14:17

网友点评