1、(function(){。。。。。。})();这种写法是闭包的写法,表明这句是一个函数表达式,其函数内部的变量不会污染全局
如果不明白,请百度搜下“js函数表达式”
2、LUI.cachedInstances定义成了一个对象,你划红线的地方,这样的写法应该是想找这个对象的某个属性,其他地方应该有这个属性的添加
3、A是定义的一个对象,即使没有明确的声明,这种隐式的使用,也会在全局作用域中添加一个A对象,这样的做法是为了尽可能的减少对全局的影响,因为这样在全局中只有一个A可以调用其内部的函数、变量或对象