未捕获的类型错误: 对象 5229d8fff4ae7a3803000023 没有方法"toFixed"



这是我的代码片段:

    json.iddd = ~~(json.id);
    console.log(typeof(json.iddd)); //shows number
    new ResponseTabView(json.iddd); // backbone view

在我调用的视图中:

this.grid = new Backgrid.Grid({body : this.body, collection :this.collection, columns: this.columns});

我收到以下错误:

Uncaught TypeError: Object 5229d8fff4ae7a3803000023 has no method 'toFixed'

如何摆脱它?

> 正如@Abhilash所说,您正在string类型对象上使用toFixed(),这肯定会导致错误 Object xyz has no method toFixed .

toFixednumber Object不是字符串的方法。

这是为您提供的参考表

数字对象方法

toExponential(x)    Converts a number into an exponential notation
toFixed(x)          Formats a number with x numbers of digits after the decimal point
toPrecision(x)      Formats a number to x length
toString()          Converts a Number object to a string
valueOf()           Returns the primitive value of a Number object

因此,您需要使用 parstInt()parseFloat() 将字符串解析为整数

parseInt(json.iddd).toFixed();   Or
parseFloat(json.iddd).toFixed();

在传递给Backgrid.Grid的参数中,一个参数需要Number类型。但是您传递的参数是"字符串"类型。

String对象没有可供您使用的toFixed()。因此错误。

console.log每个参数typoof,并阅读 Backgrid 的文档以查看需要Number类型的参数。

干杯!

相关内容

  • 没有找到相关文章

最新更新