Разрыв строки JavaScript в IE8 - PullRequest
       2

Разрыв строки JavaScript в IE8

0 голосов
/ 01 ноября 2011

У меня есть скрипт, который использует эту строку как часть геокодирования.

var dms = String(dmsStr).trim().replace(/^-/,'').replace(/[NSEW]$/i,'').split(/[^0-9.,]+/);

Он отлично работает во всех браузерах, кроме IE, который выдает ошибку.

Я посылаю параметры.

0.5501039994056782

Это не мой код, я просто отлаживаю его.Я предполагаю, что это может быть проблемой с Typecasting это к строке, учитывая, что это ясно число.

Но я хотел бы получить некоторую обратную связь.

Ответы [ 3 ]

3 голосов
/ 01 ноября 2011

В IE8 нет String.trim(). Вы можете добавить это так:

if(typeof String.prototype.trim !== 'function') {
  String.prototype.trim = function() {
    return this.replace(/^\s+|\s+$/g, ''); 
  }
}

согласно этому ответу.

0 голосов
/ 01 ноября 2011

точная ошибка

"Object doesn't support property or method 'trim'" 

, чтобы решить, вы могли бы сделать:

var dms = jQuery.trim(String(dmsStr)).replace(/^-/,'').replace(/[NSEW]$/i,'').split(/[^0-9.,]+/); 
0 голосов
/ 01 ноября 2011

Я не думаю, что IE имеет trim().Попробуйте это:

if(typeof String.prototype.trim !== 'function') {
  String.prototype.trim = function() {
    return this.replace(/^\s+|\s+$/g, ''); 
  }
}

См. этот вопрос SO для получения дополнительной информации

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...