在JavaScript对象文字中组织方法和属性的最佳方法

时间:2012-05-20 09:38:56

标签: javascript oop code-organization

组织JavaScript对象文字的最佳方法是什么?

我通常做这样的事情:

var myObj = {
    property1 : 'string',
    property2 : true,
    method1 : function() {},
    method2 : function() {
        // Do something with method1 here
        method1();
    }
    init : function() {
        method2();
    }    
};

基本上,我的全局属性位于顶部,方法如下。

另外,如果我有一个方法来调用另一个方法,我先写下一级,然后再处理它。这对我来说是合乎逻辑的,因为您首先阅读的是更基本的功能,而不是使用它完成的操作。但是我注意到有比我更多经验的人反过来做了。

有没有正确的方法来做这件事还是选择的问题?

另外,我在教程中注意到,通常人们使用下划线(如_bulid_init)为某些方法(如构建方法或init方法)添加前缀。这背后的逻辑是什么?

1 个答案:

答案 0 :(得分:1)

它实际上取决于您的程序和编写代码的方式,因为there are a lot of ways to namespace stuff in JS和对象文字只是其中之一。

关于_前缀,JS没有在“类”中制作“私有成员”的内置方法。你必须使用闭包来模仿这样的。否则,它意味着JS中的对象始终将其属性和方法设为public。作为一些惯例,在其前面添加_意味着该成员被用作私有成员。