最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

What's the difference between undefined and window.undefined in JavaScript? - Stack Overflow

programmeradmin0浏览0评论

If a is undefined, this works:

if(window.a) {}

while this throws an error:

if(a)

Can someone explain why?

If a is undefined, this works:

if(window.a) {}

while this throws an error:

if(a)

Can someone explain why?

Share Improve this question edited Apr 13, 2011 at 16:40 Pops 30.9k37 gold badges137 silver badges153 bronze badges asked Mar 30, 2010 at 8:16 Andreas KöberleAndreas Köberle 111k58 gold badges280 silver badges307 bronze badges 0
Add a ment  | 

1 Answer 1

Reset to default 10

window.a is a property of window and it's undefined. a is a variable, and it's undeclared.

To use a variable, you should first declare it using the var statement. Since you didn't declare a, the interpreter raises an error. Object properties are not needed to be explicitly declared in order to use them. Crockford writes in The Good Parts:

If you attempt to extract a value from an object, and if the object does not have a member with that name, it returns the undefined value instead.

发布评论

评论列表(0)

  1. 暂无评论