2012-08-06 100 views
0

我想做类似下面的代码。显然这不起作用,因为这不允许你传入变量,在下面的情况下,它是最小值和最大值。将变量传递给Javascript模块化模式方法

是否可以这样做?如果是这样,怎么样?

谢谢。 J.

var utils = (function() { 

    function randomRange(min, max) { 
     return ((Math.random() * (max - min)) + min); 
    }; 

    return { 
     randomRange : randomRange(min, max); 
    }; 

}()); 

utils.randomRangeRound(20,5); 

回答

3

如果你想要的是这样,这将工作:

utils.randomRangeRound(20,5); 

那么,你可以这样做:

var utils = { 
    randomRangeRound: function(min, max) { 
     return ((Math.random() * (max - min)) + min); 
    } 
}; 

或者,如果你有多种方法utils对象指定在代码中的不同位置:

var utils = utils || {}; 

utils.randomRangeRound = function(min, max) { 
    return ((Math.random() * (max - min)) + min); 
} 
+0

冠军。谢谢。 – Jarrod 2012-08-07 02:05:41

0

或者,你的代码几乎工作你刚刚得到的语法错误:

var utils = (function() { 

    this.randomRange = function (min, max) { 
     return ((Math.random() * (max - min)) + min); 
    }; 

}());