解释 undefined 两点

作者:vkvi 来源:千一网络(原创) 日期:2010-7-30

未赋值,就是 undefined

var v1;
var v2 = "v2";
v3 = "v3";
// v4; // 既没有使用 var,也没有为其赋值,出错。
alert(typeof v1); // undefined
alert(typeof v2); // string
alert(typeof v3); // string
alert(typeof v4); // undefined

v1、v4 的 typeof 是 undefined,他们的特点是:

  • v1 声明了,但没有赋值;
  • v4 既没有声明,也没有赋值;

划去相同的部分,也就是说只要没有赋值 typeof 就是 undefined。还有一种情况没说:var v1 = undefined;,这等效于 var v1,所以没说。

虽然均是 undefined,但使用有所不同

那么上面的 v1 和 v4 有没有其他区别呢,当然有了,这表现在使用上,v1 虽然未被定义,但可以使用,而 v4 是不能使用的。

var v1;
function foo(p)
{
}
foo(v1); // 运行正常
foo(v4); // v4 未定义错误

你前面那位网友看了:SQL Server 要让远程连接起作用的三个步骤

▲▲▲嘿,欢迎转载传播本站原创文章,尽量保留来源噢。▲▲▲

文章评论
标题:必填
内容:
vkvi
vkvi

作者简介: vkvi,致力于 .NET Web 开发、移动开发的技术推广,在 .NET、SQL Server、Windows Server 等方面有深入研究和丰富经验,10 年间共计撰写文章 4000 余篇。 主持金融、国土、农业、电商等多个行业项目执行, 推行“技术提升生产力、人心决定成功率”的管理理论。 联系他