2012-06-06 128 views
3

我想在這樣一個對象來操作的屬性:數學運算

for (property in posts.data) { 
    property = property+1+","; 
    output += property; 
} 
document.write(output); 

的屬性數值:0,1,2等

我想在這種情況下結果爲1,2,3。但相反,我得到了01,11,21等......它似乎將該屬性視爲文本字符串而不是數字。爲什麼?我能做些什麼呢?

+1

因爲所有的屬性名稱都是字符串。您可以先將它們中的每一個轉換爲數字。 –

+0

如何將字符串轉換爲數字? – Himmators

+1

http://stackoverflow.com/questions/1133770/how-do-i-convert-a-string-into-an-integer-in-javascript –

回答

5

1.Unary '+' 操作符將字符串轉換爲整數

for (property in posts.data) { 
    var t = +property + 1; 
    output += t+","; 
} 

2。 Javascript的parseInt方法

for (property in posts.data) { 
    var t = parseInt(property, 10)+ 1; 
    output += t+","; 
} 

在parseInt函數的函數調用(基數)的第二個參數會告訴遵循什麼數字系統的功能。

1

ParseIntproperty變量。像parseInt()

for (property in posts.data) { 
    var p = parseInt(property)+1+","; 
    output += p; 
} 
1

你可能會迫使字符串和int

for (property in posts.data) { 
    var v = parseInt(property, 10) + 1; 
    output += v + ","; 
}