日期:2014-05-16  浏览次数:20442 次

JS作用域,和函数的问题
JS中只有函数才有作用域,而函数又是属于对象的。如全局环境下的变量(包括函数)都是作为window对象的属性。
我们知道全局环境下一个函数中访问调用另一个函数是不需要通过window.fn()的方式访问的(当然这样也可以),可直接访问。但是:
o={
get:function(){this.getAll()},
getAll:function(){}
}
对象o中的函数get访问对象o中的函数getAll则必须通过对象o来访问,不能直接访问。为什么呢?

------解决方案--------------------
调用函数 或者 获取 属性值。

标准写法是 对象.属性 如:window.fn()

而没有写 对象。默认是 window 对象。

getAll 是 对象 o 的一个函数,只能用 o 去访问