2013-01-06 4 views
1

Javascript의 연관 배열에서 '.toString()'을 호출 할 수 있습니까?JS 연관 배열의 toString()

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 디버그 메뉴 :

잡히지 않은 타입 오류 : 메소드 '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']) 

이 너무 toString()가 필요하지 않은, 당신에게 String를 반환합니다.

+0

죄송합니다, 작동하지 않는 것 같습니다. 질문에 정확한 코드를 추가하고 크롬 디버그 바에 오류를 추가했습니다. –

+0

toString은 필요하지 않습니다. JSON.stringify는 String을 반환합니다 (따라서 'stringify'). – asgoth

+0

고마워, 그게 효과가있어 :) –

관련 문제