2011-12-15 3 views
0

Я получаю значение широты с помощью forwardGeocoder, и добавляю полученное значение широты с десятичным числом. Посмотрите на приведенный ниже код.Titanium - Проблема с добавлением номеров

Ti.Geolocation.forwardGeocoder(textField.value, function(e) { 
      var a = e.latitude; 
      var b = 0.1; 
      var c = a+b; 
      Ti.API.info('result c: '+c); 
}); 

Результат показывает

[INFO] result c: 40.7145500.1 

Проблема заключается в том, данное значение не добавляется к значению широты, он просто печатается вместе с жалом.

Когда я пробовал вычитать, он работал нормально. Когда я попытался использовать пользовательские значения для a и b, он работал нормально.

Ti.Geolocation.forwardGeocoder(textField.value, function(e) { 
      var a = 0.1; 
      var b = 0.1; 
      var c = a+b; 
      Ti.API.info('result c: '+c); 
}); 

Результат показывает

[INFO] result c: 0.2 

Итак, как я мог бы добавить номер к полученной широте? Помогите мне решить эту проблему. Заранее спасибо.

ответ

2

Похоже, что e.latitude является строкой, а JavaScript преобразует Number в строку и объединяет ее.

Попробуйте это:

Ti.Geolocation.forwardGeocoder(textField.value, function(e) { 
      var a = parseFloat(e.latitude); 
      var b = 0.1; 
      var c = a+b; 
      Ti.API.info('result c: '+c); 
}); 
+0

Спасибо так много людей. Он работает как шарм. – iOS