2013-05-18 1 views
0

는 내가이 같은 객체 JSON.Stringify 있는지 알아 내려고 노력하고 있어요 :자바 스크립트 객체 데이터 추출 (JSON 캐릭터 라인 화/구문 분석 또는없이?)

{"m_id":"xxx","record": 
{"USER":"yyy","PWD","zzz","_createdAt": 
11111."_updatedAt":00000},"state":"valid"} 

을 다음에만 사용자를 JSON.Parse하려고 그리고 PWD는 객체를 호출 할 필요가 없으며 stringify를 사용합니다. 그게 어떻게 효과가 있니?

감사합니다.

+0

당신이 여기서 무엇을 요구하고 있는지 분명하지 않습니다. – Pointy

+0

JSON.stringify를 취소 하시겠습니까? –

+1

당신은 무엇을하려고합니까? –

답변

3

왜 개체를 문자열로 바꾸는 것에 대해 이야기하는지 잘 모르겠습니다. JS에서 데이터를 조작해야하는 경우가 아니라 네트워크를 통해 데이터를 전송해야한다면 문자열 화해야합니다.

... 어떻게{...USER: "aaa", PWD: "zzz"...}의 문자열을 추출 할 수 있습니까? 제 (과 또는 속성 이름 따옴표없이, 또는 좋은 줄 바꿈없이 그것을 읽을 수 있도록 들여 쓰기) 다음과 같은

당신이 개체를 참조하는 변수가 가정, 뭔가 :

var obj = { 
    "m_id": "xxx", 
    "record": { 
     "USER": "yyy", 
     "PWD" : "zzz", 
     "_createdAt": 11111, 
     "_updatedAt": 00000 
    }, 
    "state": "valid" 
}; 
다음과 같이

그런 다음 당신은 중첩 된 record 객체의 속성에 액세스 할 수 있습니다 :

console.log(obj.record.USER); // outputs "yyy" 
console.log(obj.record.PWD); // outputs "zzz" 
// etc. 

(참고 : 귀하의 질문에 두 개의 오타가 있었다, 0 사이에 콜론을 봤는데해야 쉼표를및 "zzz" 사이에 쉼표가 있어야하는 도트와 11111"_updatedAt" 사이에 있어야합니다. JSON.stringify()는 당신이 그 실수로 보여 문자열을 생산한다고 방법은 없습니다.)

+0

당신이 그런 의미에서 옳은 것 같지만, 나는 그것을 사용하지 않으려 고합니다. 위의 질문을 편집했습니다. –

+0

요구 사항이 "yyy"및 "zzz"값을 추출하는 것이라면 내가 본 방식은 올바른 _and 간단한 방법입니다. 나는 당신이 왜 당신의 업데이트 된 질문 문구에 따라 "stringify"를하고 싶어하는지 이해하지 못한다. 객체를 사용하면 속성에 직접 액세스 할 수 있습니다. 문자열 표현을 사용하면 문자열을 구문 분석 할 코드를 작성해야합니다. 'JSON.parse()'를 사용하여 개별 조각을 가져올 수 없습니다. – nnnnnn

0

당신이 문자열이 "USER", 배열로 "PWD" 등, 다음 Object.keys를 사용합니다.

반복하려는 경우 일반 for-in enumeration 만 사용하십시오.

내가 질문을 잘못 이해하지만, 수도
0

나는 그것이 다음이 다음

당신이 할 수있는 적절한 자바 스크립트 객체로 문자열을 변환하는 데 충분해야

var tmp = JSON.parse(string_to_convert) 

를 사용해보십시오 무엇이라고 생각하면

for(var index in tmp){ 
console.log(tmp[index]); 
} 

그리고 첫 번째 속성 집합의 모든 키를 나열해야합니다. 중첩 된 것을하려면 속성에 대한 재귀를 사용하십시오. 이것이 의미가 있기를 희망합니다 ...

관련 문제