2014-11-26 6 views
-3

누구나 두 코드의 차이점을 설명하십시오. 인쇄하려고합니다 JSON 문자열.이 두 기능의 차이점

1)console.log("Hello "+str);

2)

console.log("Hello"); 
console.log(str); 

이는

이 코드는 오류를 CONSOLE.LOG ("안녕하세요"+ STR을주고)를 작동하고;원형 구조를 JSON으로 변환

왜 그런가? 아무도 날 두 코드의 차이점을 설명 할 수 있습니다.

편집 :이 내 코드

firstname="hello"; 
lastname= "hhf"; 
username= "dffflffl"; 
email="[email protected] 
password= "dddd"; 

var opts = { 
url: 'localhost:8081/register', 
method: 'POST', 
body: JSON.stringify({first_name:firstname,last_name:lastname, user_name:username,email:email,password:password}), 

}; 

감사

입니다
+1

str 개체가 무엇입니까? – Roger

+0

순환 구조는 다음과 같습니다. - var a = {}; a.b = a; - JSON.stringify는 이러한 경우 작동하지 않습니다. – DaveAlger

답변

1

JSON은 자기 참조 객체 (주기적인 객체 그래프를) 처리 할 수없는, 그래서 그런 일이 콘솔로 인쇄 할 수 없습니다. strJSON.stringify에 의해 생성 된 JSON 문자열이 될 것으로 예상되는 경우 JSON으로 변환하고있는 객체 자체에 대한 참조를 갖거나 아이가 순환 참조 개체 경우

> var str = { x : 1}; str.x = str; 
> JSON.stringify(str); 

TypeError: cyclic object value