Javascript 对象问题

标签 javascript object global

我是 Javascript 的初学者。我正在查看其他人编写的以下代码:

function MeetingPage()
{
   MeetingPage.colors = new Object();
}

...

var meeting = new MeetingPage();

据我所见,我相信 MeetingPage 函数创建了一个对象,稍后有人会在 session 中保留该对象。什么是 MeetingPage.colors? MeetingPage 前缀是某种全局的吗?它是某种“this”指针吗?

如有任何建议,我们将不胜感激。

最佳答案

这实际上只是错误的代码。 MeetingPage.colors = new Object();MeetingPage function 上设置一个名为 colors 的属性,即:

function MeetingPage(){ }
MeetingPage.colors = {};

这是完全有效的,因为 JavaScript 中的所有函数都是对象。问题是,如果您有多个 session 页面实例:

var meeting1 = new MeetingPage();
var meeting2 = new MeetingPage();

您发布的代码将重置颜色。它应该写成 this.colors = {},或者应该设置在函数的外部,就像我的第一个代码片段中那样。

关于Javascript 对象问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5924990/

相关文章:

javascript - 如何随机验证动态行

java - 如何影响一个类的所有对象? ( java )

air - 如何在非 Debug模式下获取 Adob​​e AIR 全局运行时错误的堆栈跟踪?

javascript - 如何使用 jquery 删除和替换选择选项?

javascript - 在 ExtJS 6 上动态更改样式

ruby - 如何使用函数在 ruby​​ 中操作对象数据的实例?

javascript - 如何从对象数组中删除元素?

swift - 全局 var 与共享实例 swift

javascript - 点击似乎被模糊阻挡

java - Java 在内存(或其他地方)中如何表示对象的结尾?