newJavaScript中的关键字在第一次遇到时会非常混乱,因为人们倾向于认为JavaScript不是面向对象的编程语言.
如何在JavaScript中创建命名空间,以便我的对象和函数不会被其他同名的对象和函数覆盖?我用过以下内容:
if (Foo == null || typeof(Foo) != "object") { var Foo = new Object();}
Run Code Online (Sandbox Code Playgroud)
这样做有更优雅或简洁的方式吗?
我想知道创建一个具有属性和方法的JavaScript对象的最佳方法是什么.
我已经看到了这个人在所有函数中使用var self = this然后使用的示例,self.以确保范围始终正确.
然后我看到了使用.prototype添加属性的示例,而其他人则使用内联方式.
有人可以给我一个具有一些属性和方法的JavaScript对象的正确示例吗?
按照快速原型方法,我正在 Marionette.js/backbone.js 中开发一个应用程序,并大量使用窗口对象将集合和视图绑定到全局堆栈(例如 window.app.data、window.app.views) 。
当然,将对象封装在单个类中并在需要时将它们作为参数传递总是更好(更平滑!)。然而,当应用程序及其潜在用例变得非常大时,这就会有一些限制。由于我处理的数据来自 API,因此任何感兴趣的人都可以访问,这是否证明将数据存储在窗口对象中是合理的?或者 ES6(或者特别是 Marionette.js)中是否有其他最佳实践来实现相同的结果,但以更私密的方式?!