构造函数中的方法和函数

这个问题在这里已经有了答案:

  • 方法和函数之间的区别33答案

  • 所有的方法都是功能; 并非所有功能都是方法。 使用你的例子:

    function myObj() {
    
        this.result = "RESULT: ";
    
        // is this a method or a function ?
        function innerFunc(a, b) {
            return a + b;
            //alert(this.result) not possible
        }
    
        this.sum = function(a, b) {
          alert(this.result + innerFunc(a, b));
        }  
    } 
    

    如果你做了var x = new myObj(); 你会有x有两个属性: result ,它被设置为“RESULT:”和sum ,这是一个需要2个参数的函数。

    但是,它没有名为innerFunc的属性。 这是从x内部完全可用的,即在构造函数或方法中,例如sum

    所以x.sum是一个方法,它是一个函数,但innerFunc是一个不是方法的函数。

    链接地址: http://www.djcxy.com/p/17319.html

    上一篇: Method and Function in Constructor

    下一篇: How to differentiate between a method and a function?