我在桌面游戏中遇到一些javascript问题,在手机上工作正常。
当我尝试跑步时:
return Math.trunc(num * Math.pow(10, 2)) / Math.pow(10, 2);
我上了控制台:
TypeError: 'undefined' is not a function (evaluating 'Math.trunc(num * Math.pow(10, 2))')
知道为什么会这样吗?在其他浏览器上工作得很好,我不知道为什么(我从来没有使用过safari)。
答案 0 :(得分:4)
Math.trunc
。显然你正在使用的Safari版本中的JavaScript引擎还没有。
如果缺少它,你可以填充它:
if (!Math.trunc) {
Object.defineProperty(Math, "trunc", {
value: function(val) {
return val < 0 ? Math.ceil(val) : Math.floor(val);
}
});
}
答案 1 :(得分:0)
return ~~(num * Math.pow(10, 2)) / Math.pow(10, 2);
怎么样?
~~
运算符似乎是Math.trunc()