0

我创建了这个对象:

var resultStats = {
    possibleResults: 10,
    validResults: 5,
};

我会写什么以便写作resultsStats["calculateSuccessRate()"](或类似的)将计算Math.round(100*this.validResults/this.possibleResults);并返回 50 的答案。

4

3 回答 3

3
var resultStats = {
    possibleResults: 10.0,
    validResults: 5.0,
    calculateSuccessRate: function(){
        return Math.round(100 * this.validResults/this.possibleResults);
    }
};

然后可以使用以下方法调用该函数:

resultStats["calculateSuccessRate"]();

或者:

resultStats.calculateSuccessRate();
于 2012-08-09T19:17:02.657 回答
1
var resultStats = {
    calculateSuccessRate : function() {
       return Math.round(100 * (this.possibleResults / this.validResults))
    },
    possibleResults: 10,
    validResults: 5
};
于 2012-08-09T19:17:30.010 回答
0

你可以calculateSuccessRate给对象一个函数resultStats

var resultsStats = {
    possibleResults: 10,
    validResults: 5,
    calculateSuccessRate: function(){
        return Math.round(100*this.validResults/this.possibleResults);
    }
};

然后你可以这样称呼它:

resultsStats.calculateSuccessRate();

或者(你很接近):

resultsStats["calculateSuccessRate"]()
于 2012-08-09T19:17:14.103 回答