对象不接受属性或方法

时间:2017-06-15 20:05:10

标签: javascript internet-explorer

我的脚本中有这个功能,Internet Explorer会抛出错误: " el objeto no acepta la propiedad o el metodo trunc"这意味着"对象不接受属性或方法trunc"

function minutesToString(a){
  var hours = Math.trunc(a/60);
  var minutes = a % 60;
  return(hours +" hr "+ minutes + " m");
}

在chrome,firefox等上运行完美。

4 个答案:

答案 0 :(得分:17)

Math.trunc()添加polyfill。在使用Math.trunc()

之前,请在某处包含以下代码
Math.trunc = Math.trunc || function(x) {
  if (isNaN(x)) {
    return NaN;
  }
  if (x > 0) {
    return Math.floor(x);
  }
  return Math.ceil(x);
};

答案 1 :(得分:1)

只需使用Math.floor或完全离开:

function minutesToString(a){
 var minutes = a % 60;
 var hours=(a-minutes)/60;
 return(hours +" hr "+ minutes + " m");
}

答案 2 :(得分:0)

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/trunc#Browser_compatibility

这是MDN,你可以在这里查找JS函数。在右侧有一个浏览器兼容性部分或在页面底部。考虑到IE很糟糕,它不支持Math对象上的这个属性(trunc)。

答案 3 :(得分:0)

parseInt()接受数字,受IE支持,其行为类似于Math.trunc