2011-12-02 133 views
0

美好的一天!javascript中的全局变量

我写一个脚本如下:

var prev = 0; 

$(document).ready(function(){ 
    dynamicListOne(length, prev); 
}); 

function dynamicListOne(length, prev){ 
    length++; 
    prev = length; 
} 

但上一个始终为0 我怎么可以指定分组长度=?

预先感谢您

+1

从此片段(其中有错误)来看,'prev'在'function'是与全球不一样。你通过了它的副本。 – birryree

+0

没有名称的函数语句是语法错误。你是如何定义它的? –

+0

我该如何传递它的副本? – newbie

回答

1

你的函数接受prev作为参数,所以函数内部的名称指向一个局部变量,而不是全球性的。只是不要将它作为参数添加到你的函数中。

并仔细想想如果你真的真的想要一个全局变量。

0

函数签名中的prev变量隐藏全局变量prev。选择一个不同的名称和它的工作:)

0

没有必要在上一个以作为参数传递

var prev = 0; 

$(document).ready(function(){ 
    dynamicListOne(length); 
    console.log(prev) 
}); 

function(length){ 
    length++; 
    prev = length; 
}