2013-01-06 44 views
1

是否可以在JavaScript中的關聯數組上調用'.toString()'。toString()JS關聯數組

var theString = jsonData['item'].toLowerCase(); 
var theString = jsonData.item.toLowerCase(); 

這些都不適合我在將數組項目的值轉換爲小寫。

在PHP我可以做到這一點:

strtolower($array['item']); 

感謝提前:)

編輯: 這裏是我的確切代碼:

var correctAnswer = jsonData[setname][qname]['answers'][answerval]; 
if(lockcase == false){ 
orrectAnswer = correctAnswer.toString().toLowerCase(); 
} 

這裏是從消息Chrome調試菜單:

未捕獲TypeError:無法調用方法't未定義

回答

1

更新:用空字符串字面串聯返回值:

var theString = ("" + jsonData['item']).toLowerCase(); 
var theString = ("" + jsonData.item ).toLowerCase(); 
+0

對不起,這似乎並沒有工作。 我想你不能這樣做,因爲它被解釋爲函數被解釋爲數組的子對象。 –

+0

@HelloInvader所以你的意思是返回一個布爾值? – 0x499602D2

+0

@HelloInvader查看我的更新。它應該工作。 – 0x499602D2

2

嘗試oString」:

JSON.stringify(jsonData['item']) 

這將返回一個String,所以不需要toString()

+0

對不起,這似乎並不奏效。我已經將我的確切代碼添加到問題以及chrome調試欄中的錯誤中。 –

+0

你不需要toString。 JSON.stringify返回一個字符串(因此'stringify')。 – asgoth

+0

謝謝,那工作:) –