代码之家  ›  专栏  ›  技术社区  ›  Hans Yulian

在javascript中,是否可以在类中分离接口和实现

  •  0
  • Hans Yulian  · 技术社区  · 6 年前

    在javascript中,如果我不使用类,我可以这样做:

    const Module = (function(){
        const myArray = [];
        const myObject = {};
        return {    //this is my interfaces
            myArray,
            myObject,
    
            myMethod1,
            myMethod2,
            myMethod3,
            myMethod4,
    
            myMethod99,
        }
    
        function myMethod1(){}
    
        function myMethod2(){}
    
        function myMethod3(){}
    
        function myMethod4(){}
    
        function myMethod99(){} 
    
    })
    

    现在,javascript中类的情况不同了:

    class Module{
    
        constructor(){}
    
        myMethod1(){}   
        myMethod2(){}   
        myMethod3(){}   
        myMethod4(){}
    
        myMethod99(){}
    
    }
    

    在这种情况下,我无法将接口和实现分离开来,因此很难在代码中导航。Javascript有没有可能处理这种情况?

    1 回复  |  直到 6 年前
        1
  •  0
  •   Madara's Ghost    6 年前

    JavaScript中还没有私有成员。存在 a proposal 其中包括这一功能,虽然它处于第3阶段,但尚未登陆。

    JavaScript中也没有接口(因为几乎没有类型系统),将来也不太可能添加一个。