我有一个脚本,它使用此行作为某些地理编码的一部分。
var dms = String(dmsStr).trim().replace(/^-/,'').replace(/[NSEW]$/i,'').split(/[^0-9.,]+/);
除了IE之外,它在除IE之外的所有浏览器中都能正常工作。
我发送参数。
0.5501039994056782
这不是我的代码我只是在调试它。我假设它可能是一个问题,将它类型化为字符串,因为它显然是一个数字。
但我喜欢一些反馈。
答案 0 :(得分:3)
IE8中没有String.trim()
。您可以这样添加:
if(typeof String.prototype.trim !== 'function') {
String.prototype.trim = function() {
return this.replace(/^\s+|\s+$/g, '');
}
}
答案 1 :(得分:0)
我不认为IE有trim()
。试试这个:
if(typeof String.prototype.trim !== 'function') {
String.prototype.trim = function() {
return this.replace(/^\s+|\s+$/g, '');
}
}
有关详细信息,请参阅this SO question
答案 2 :(得分:0)
确切的错误是
"Object doesn't support property or method 'trim'"
所以要解决你可以这样做:
var dms = jQuery.trim(String(dmsStr)).replace(/^-/,'').replace(/[NSEW]$/i,'').split(/[^0-9.,]+/);