2013-01-06 38 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

谢谢,那工作:) –