最重要的是我无法设置变量,需要动态:
处理纬度。我们称之为lat。假设在这种情况下lat是123.4567
lat.toFixed(2).parseFloat();
TypeError: Object 123.35 has no method 'parseFloat'
最好的办法是什么?
答案 0 :(得分:3)
toFixed
是Number
的方法并返回一个字符串。 window.parseFloat
是一个全局函数,而不是String
的方法,但如果你真的必须,那么你可以将它作为String
方法,否则只需将其用作函数。在这种情况下,您甚至可以使用unary plus运算符。
(关于扩充本土对象的讨论很多,我不打算进行,你可以做一些研究并自己决定。)
的Javascript
if (!String.prototype.parseFloat) {
String.prototype.parseFloat = function () {
return parseFloat(this);
}
}
var lat = 123.456789;
console.log(parseFloat(lat.toFixed(2)));
console.log(lat.toFixed(2).parseFloat());
console.log(+lat.toFixed(2));
输出
123.46
123.46
123.46
上