Javascript 函数不';不读取全局变量

Javascript 函数不';不读取全局变量,javascript,jquery,global-variables,Javascript,Jquery,Global Variables,我在Javascript和全局变量方面有点问题。 根据我几分钟前在搜索解决方案时读到的一篇文章,函数外部定义的变量是全局变量,可以在整个文档中使用。 嗯,这似乎对我不起作用。基本上,即使我试图将流程简化为: var list_amount = 1; function createElements() { window.alert('0'); var cintfa_list_top = $("<div>").attr({"id":"intfa_list_top"});

我在Javascript和全局变量方面有点问题。 根据我几分钟前在搜索解决方案时读到的一篇文章,函数外部定义的变量是全局变量,可以在整个文档中使用。 嗯,这似乎对我不起作用。基本上,即使我试图将流程简化为:

var list_amount = 1;
function createElements() {
    window.alert('0');
    var cintfa_list_top = $("<div>").attr({"id":"intfa_list_top"});
    $('#intfa_list').empty()
    $('#intfa_list').append(cintfa_list_top);
    var j=0;
    window.alert('1');
    for (j=0;j<list_amount;j++) {
        window.alert('2');
            ......
            ....
            ..
var列表\金额=1;
函数createElements(){
window.alert('0');
var cintfa_list_top=$(“”).attr({“id”:“intfa_list_top”});
$('#intfa_list')。空()
$('intfa_list')。追加(cintfa_list_top);
var j=0;
window.alert('1');
对于(j=0;j我试用了你的代码,它似乎工作得很好。

我唯一能想到的是它的定义位置。

您的代码中有一个错误挂起了脚本。事实上,关闭for和函数效果很好(同时注释掉$,因为这里没有定义它)

检查Firebug或Chrome/Opera javascript控制台中的错误


LE:在看到jsfiddle.net/ALd2b/2之后,应该在变量赋值之后调用函数。

createElements()之外的内容?该函数是否在另一个函数中?如果是这样,list_amount将不是全局的,它将是该函数的局部函数。在声明list_amount之前调用createElements吗?就是这样-luke知道了-这是一个提升问题。声明提升到顶部,设置为undefined,然后如果在将其设置为的行之前调用createElements1,它仍然是未定义的函数由body onload属性调用,但即使在页面加载后我尝试用按钮调用该函数,它仍然不起作用。嗯,太好了,那么可能是其他地方出现了一些代码错误。Javascript错误修复啊……感谢测试:)不,遗憾的是,它没有。这将是一个很容易解决的问题。我发现了错误,这是在文档的前面,我忘记了在给它赋值之前定义一个2D数组,我猜即使到那时它还没有出现在函数中,但它还是以某种方式使所有内容都出现故障?不管怎样,谢谢大家的帮助:)