javascript库中的javascript常量
我正在尝试编写一个小的javascript库,如下所示。我真正想要的是我打电话的时候javascript库中的javascript常量,javascript,Javascript,我正在尝试编写一个小的javascript库,如下所示。我真正想要的是我打电话的时候 console.log(tnd().pv); 它应该输出相同的数字,而不是每次都生成新的数字。我知道问题是每次我登录时它都调用Math.random。但我怎样才能使它输出相同的数字呢 (function () { var tnd = function() { return new tnlib(); }; var tnlib = function() {
console.log(tnd().pv);
它应该输出相同的数字,而不是每次都生成新的数字。我知道问题是每次我登录时它都调用Math.random。但我怎样才能使它输出相同的数字呢
(function () {
var tnd = function() {
return new tnlib();
};
var tnlib = function() {
this.version = function(){
console.log('1.0');
};
this.pv = Math.random()*10000000000000000;
};
if(!window.tnd) {
window.tnd = tnd;
}
})();
不要在每次调用
tnlib
时执行Math.random()
,而是作为静态变量执行:
(function () {
function tnd() {
return new tnlib();
}
function tnlib() {
}
tnlib.prototype.version = function(){
console.log('1.0');
};
tnlib.prototype.pv = Math.random()*10000000000000000;
if (!window.tnd) {
window.tnd = tnd;
}
}());
(或者,如果确实需要将pv
作为实例属性):
在
console.log()之外执行tnd()
并存储它,然后从存储的实例访问.pv
。谢谢,我最后选择了第二个选项。
var staticPv = Math.random()*10000000000000000;
function tnlib() {
this.pv = staticPv;
…
}