请帮我解决javascript代码

时间:2011-12-09 06:08:19

标签: javascript

$(document).ready(function()
                {
                    IncomeDetails.initIncomeForm();
                });

上面的代码是用XSL文件编写的。

有人能解释一下这个Javascript代码的含义是什么吗? IncomeDetail是上课吗?什么是范围?有什么用?

我在我的代码中发现此代码被定义为app.js文件为

IncomeDetails = {

initIncomeForm : function()
{...some code here
这意味着什么?

2 个答案:

答案 0 :(得分:2)

IncomeDetails对象initIncomeForm方法

此语法

IncomeDetails = {
   initIncomeForm : function() {

是如何在JavaScript中声明对象文字的,尽管作者可能有点草率。假设之前没有在其他地方声明IncomeDetails,那么在此处取消var将导致此对象成为隐式全局变量,因此,回答您的另一个问题,即全局范围。

答案 1 :(得分:0)

代码意味着一旦DOM准备就绪,就会执行对象IncomeDetails的方法initIncomeForm()。您呈现的代码是使用Singleton pattern形成的。这是一种使用多个公共变量和私有变量和方法定义对象的简单方法。

方法的范围由定义方法的代码中的位置定义。所以在你的情况下,IncomeDetails对象的方法的范围是在app.js中的IncomeDetails对象定义的周围。

在你的情况下,initIncomeForm对对象进行一些初始化。可能它会返回另一个单例对象,其中包含要访问的方法和变量,但这只是猜测而无法从代码中读取。

IncomeDetails不是最严格定义的类,但肯定是这样的。我建议你看一下上面链接的文章,它很好地解释了不同的javascript模式。