gpt4 book ai didi

javascript - 为什么页面加载时设置的变量在 document.ready 范围内不可用?

转载 作者:行者123 更新时间:2023-12-02 20:38:41 30 4
gpt4 key购买 nike

我有一个包含的 javascript 文件,它初始化一个名为“widgets”的空数组对象

var Widgets = {};

function Widget(a,b,c){
this.a = a;
...
}

在同一个包含中定义了一堆函数原型(prototype)来将小部件信息添加到小部件:

Widget.prototype.addWidgetInfo(a,b,c){
this.info.a = a;
this.info.b = b;
...
}

还有许多函数支持文件末尾的 document.ready(){ } block 。

在页面正文中,每个输出的widget都会输出一行js并调用这个原型(prototype)函数

Widgets[id] = new Widget();
Widgets[id].addwidgetInfo("bla","bla","bla");

当文档就绪调用时

Widgets[id].info 是一个空数组....

我不明白为什么这个数据不可用!请帮忙

最佳答案

给出的示例中有一些错误。我不确定它们是否是您的问题,或者只是您示例中的问题:

  • addWidgetInfo 未正确声明。应该是:

    Widget.prototype.addWidgetInfo = function(a,b,c){
  • this.info 未初始化。应该是

    Widget.prototype.addWidgetInfo = function(a,b,c){
    this.info = {};
    this.info.a = a;
    ...
    }

关于javascript - 为什么页面加载时设置的变量在 document.ready 范围内不可用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2837103/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com