JS函数“对象预期在第2行字符0”

时间:2016-01-27 15:09:57

标签: javascript function object number-formatting

我正在为XMPie Uplan构建一个计划文件。 Javascript函数是允许的,所以当我学习JS时,我想我会利用它们。它们看起来比专有的QLingo功能更友好。我不认为这应该是重要的,它只是JS。有人发现我的JS有问题吗?

function cents(p) {
var monfor = toString(parseFloat(Math.round(p * 100) / 100).toFixed(2));
return monfor.slice(-2);
}

此代码的目的是仅返回价格中的美分。

这是应该发生的事情: 首先,我确保该数字有两个小数位并转换为字符串。然后我切掉我的字符串的最后两位数字,留下一个2位整数作为字符串,这是我的价格中的便士数。这将流入价格字段的美分部分,上标为美分。 (我有另一个函数,使用floor来杀死价格的子美元部分,填充价格的美元部分。)这个函数的错误是:

Error:        cents: An error occurred while executing the function script. 
Description: Object expected At line 2 character 0.

提前感谢您的帮助!

1 个答案:

答案 0 :(得分:3)

var numToParse = parseFloat(Math.round(p * 100) / 100).toFixed(2);

var monfor = numToParse.toString();
return monfor.slice(-2);

你错误地使用了这两个字符串。

正如评论中所提到的,我不知道这一点,你甚至不需要将它解析为字符串,因为toFixed()会自己解析它。

var monfor = parseFloat(Math.round(p * 100) / 100).toFixed(2);
return monfor.slice(-2);