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

在JavaScript对象文本中组织方法和属性的最佳方法,javascript,oop,code-organization,Javascript,Oop,Code Organization,组织JavaScript对象文字的最佳方式是什么 我通常会这样做: var myObj = { property1 : 'string', property2 : true, method1 : function() {}, method2 : function() { // Do something with method1 here method1(); } init : function() {

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

我通常会这样做:

var myObj = {
    property1 : 'string',
    property2 : true,
    method1 : function() {},
    method2 : function() {
        // Do something with method1 here
        method1();
    }
    init : function() {
        method2();
    }    
};
基本上,我的全局属性在顶部,方法在下面

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

是否有一个正确的方法来实现这一点,或者这是一个选择的问题


另外,我在教程中注意到,人们通常在某些方法(如build方法或init方法)前面加下划线,如
\bulid
\u init
。这背后的逻辑是什么?

它实际上取决于您的程序和编写代码的方式,因为,和对象文字只是其中之一


关于
前缀,JS没有在“类”中生成“私有成员”的内置方法。您必须使用闭包来模拟这种情况。否则,这意味着JS中的对象始终具有其公共属性和方法。对于某些人来说,按照惯例,在其前面加上
意味着该成员被用作私有成员。

在大多数情况下,只要将所有对象放在同一名称空间中,这样做就可以了。您可能还想看看模块模式——下划线通常用于表示此方法是“私有”的。