English 中文(简体)
变式宣言中如何利用var? [复制]
原标题:What s advantage to use var in the variable declaration? [duplicate]
  • 时间:2012-01-15 10:40:20
  •  标签:
  • javascript
This question already has answers here:
Closed 11 years ago.

Possible Duplicate:
Difference between using var and not using var in JavaScript

关于该守则,我发现没有必要宣布变数。 从事以下工作:

// with var
var object = new Object();

// without var
object = new Object();

这两者之间有何区别?

最佳回答

关键差别在于,如果你不使用<代码>var<>/code>关键词,那么你的变量将是全球性的,即使你在某些nes的职能中界定了这一变量。

<代码>var界定了这一变量的范围。 如果你想在多个领域使用你的物体,则使用全球或非全球目标,但全球人强烈倾向于使用减少全球范围的污染的名称空间。

问题回答

如果你在任何职能之外使用宽体内ava,则不重要,因为

var a

......

window.a

but inside a function

<代码>var a 是功能的私人变量,而window.a(全球)

If you don t use the var keyword you are declaring a global variable. If you use it, you are declaring the variable inside the current scope.

For example:

function foo() {
    o = new Object();
}

foo();
alert(o); // you can access the o variable here

这非常糟糕,因为你基本上污染了全球范围。

In contrast:

function foo() {
    // the o variable is accessible only inside the current scope which
    // is the foo function
    var o = new Object();
}

foo();
alert(o); // error => o is not accessible here

Conclusion: always specify the scope of your variables using the var keyword.

Using var makes the variable local to the function





相关问题
selected text in iframe

How to get a selected text inside a iframe. I my page i m having a iframe which is editable true. So how can i get the selected text in that iframe.

How to fire event handlers on the link using javascript

I would like to click a link in my page using javascript. I would like to Fire event handlers on the link without navigating. How can this be done? This has to work both in firefox and Internet ...

How to Add script codes before the </body> tag ASP.NET

Heres the problem, In Masterpage, the google analytics code were pasted before the end of body tag. In ASPX page, I need to generate a script (google addItem tracker) using codebehind ClientScript ...

Clipboard access using Javascript - sans Flash?

Is there a reliable way to access the client machine s clipboard using Javascript? I continue to run into permissions issues when attempting to do this. How does Google Docs do this? Do they use ...

javascript debugging question

I have a large javascript which I didn t write but I need to use it and I m slowely going trough it trying to figure out what does it do and how, I m using alert to print out what it does but now I ...

Parsing date like twitter

I ve made a little forum and I want parse the date on newest posts like twitter, you know "posted 40 minutes ago ","posted 1 hour ago"... What s the best way ? Thanx.

热门标签