2016-07-23 3 views
0

이 오브젝트를 데이터베이스에 저장하려면이 오브젝트를 백엔드에 게시해야합니다. Json stringify javascript 오브젝트 결과가 일치하지 않음

Recorder {config: Object, recording: false, callbacks: Object, context: AudioContext, node: ScriptProcessorNode…} 

하지만 JSON.stringify(recorder)

{"config":{"bufferLen":4096,"numChannels":2,"mimeType":"audio/wav"},"recording":false,"callbacks":{"getBuffer":[],"exportWAV":[]},"context":{},"node":{},"worker":{}} 

같은 결과보기 후

이유는 상황에 맞는 부품을 놓친?

컨텍스트가 중첩 된 개체이므로 중첩 된 개체에 JSON.stringify을 어떻게 사용할 수 있습니까?

+0

[JSON이 사용하는 토큰 기능은 무엇입니까?] (http://stackoverflow.com/questions/20925983/what-tostring-function-does-json-stringify-use) –

+0

가능한 결과는 무엇입니까? 당신은 당신의 Recorder 객체의 console.log를합니까? 해당 개체 트리를 완전히 확장하면 어떻게됩니까? – kris

+0

'JSON.parse (new AudioContext())'를 체크하면 문자열로 표현할 수 없기 때문에'{}'이 출력되는 것을 볼 수 있습니다. –

답변

-3

JSON.parse()를 JSON.stringify()를 사용하여 데이터베이스에 전달할 문자열로 변환하기 전에 사용하고 구문 분석하는 동안 contextparts를 확인하고 확인하십시오. 솔루션 다운로드 그것을

후이 플러그인을 사용하기에 변환을 위해 객체의 특별 클래스에 대한

HTH

+0

아무 것도 구문 분석하지 않습니다. – 4castle

+0

JSON.parse를 정확히 사용 하시겠습니까? –

+0

AudioContext에서 그는 자신의 게시물에서 "컨텍스트 파트"라고 언급했습니다. –

0

JSON.stringify() is compatible only with javascript object of Object() . not a special object like I can see in your code context: AudioContext, node: ScriptProcessorNode . If you are use JSON.stringify with that object then it store only property and value, not a behavior of that object

당신은 github

에서 사용할 수 serialijse 플러그인을 사용할 수 있습니다 백엔드 데이터베이스에 저장하기위한 문자열

데이터베이스에서 검색 한 후 원래 오브젝트로 변환 들어

:

var deserialize = serialijse.deserialize; 
var deserializationString = deserialize(serializationString); 

나는 당신에게 도움이 될 것입니다 바랍니다.

+0

이 마음에 드십니까? 'var serializationString = serialize (Recorder)' –

+0

그렇습니다 ... –

+0

임포트''괜찮지 만 여전히 잡히지 않습니다 ReferenceError : serialize가 정의되지 않았습니다. ...)'나는이 모듈에 약간의 문제가 있다고 생각한다. –

관련 문제