获取对象的另一个方法的值

时间:2016-01-31 05:42:55

标签: jquery

我正在努力学习oops概念,下面我想要计算一些东西。

(function(){
var rectangle= {
    specs: function(length, width){
        length= length;
        width= width;
        this.calculate();
    },

    calculate: function(){
        //How can i refer here the diameter and height passed in the specs method above
         console.log(length * width)
    }
};
rectangle.specs(10, 20);
})();

感谢

1 个答案:

答案 0 :(得分:0)

您可以采用以下两种方式之一,具体取决于调用specs方法后变量的可访问性。

第一种方法,如果您希望变量仅包含在您列出的方法中,则只需将参数传递给您调用的第二个方法。编辑被**:

包围
(function(){
var rectangle= {
    specs: function(length, width){
        length= length;
        width= width;
        this.calculate(**length, width**);
    },

    calculate: function(**length, width**){
        //How can i refer here the diameter and height passed in the specs method above
         console.log(length * width)
    }
};
rectangle.specs(10, 20);
})();

第二种方法使变量分配给对象,因此可以使用rectangle.length或rectangle.width在对象外部访问,或者在内部使用" this"关键词。编辑被**:

包围
(function(){
var rectangle= {
    specs: function(length, width){
        **this.length** = length;
        **this.width** = width;
        this.calculate();
    },

    calculate: function(){
        //How can i refer here the diameter and height passed in the specs method above
         console.log(**this.length * this.width**)
    }
};
rectangle.specs(10, 20);
})();