2013-11-27 43 views
2

我正在使用JavaScript從xml文件中讀取一些值。由於它是一個字符串,我需要將其轉換爲整數並執行一些計算。將字符串轉換爲Javascript中的整數

對於從XML文件中讀取數據我用這個代碼:

var pop = JSON.stringify(feature.attributes.Total_Pop.value); 

工作正常。後來我使用下面的代碼將其轉換爲整數:

var popint = parseInt(pop); 

這也很好。但後來當我用它來做一些數學時,它返回NAN。

我用數學運算的代碼是:

var pop6 = Math.ceil(popint/30); 

我在做什麼錯?有什麼建議麼?

+0

這依賴於字符串是什麼,但也許你可以簡單地'parseInt函數(popint,10)/ 30'。參考。 ['parseInt函數()'](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/parseInt)。 –

+0

嘗試給parseInt函數一個基本值,並且您可能希望使其成爲一個浮點數,而不是所有/ 30是一個整數。 –

+3

你做過任何基本的調試嗎? 'console.log(popint); console.log(typeof popint);'? – JJJ

回答

3

不要串化 - 只需使用var pop = feature.attributes.Total_Pop.value;。調用JSON.stringify將字符串包裝在額外的引號中。

var pop = "123";     // "123" 
var popint = parseInt(pop);   // 123 

Vs的:

var pop = JSON.stringify("123"); // ""123"" 
var popint = parseInt(pop);   // NaN 
+0

你是對的。謝謝。 – user3027820