>  기사  >  웹 프론트엔드  >  JSON 문자열과 JSON 객체 간의 상호 변환 예시에 대한 자세한 설명

JSON 문자열과 JSON 객체 간의 상호 변환 예시에 대한 자세한 설명

高洛峰
高洛峰원래의
2017-01-18 10:03:421409검색

이 글의 예시에서는 JSON 문자열과 JSON 객체를 서로 변환하는 방법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 자세한 내용은 다음과 같습니다.

json 문자열을 json 객체로 변환하는 방법. 데이터 전송과정에서 json은 텍스트, 즉 문자열 형태로 전송되는데, JS는 JSON 객체를 대상으로 동작하므로 JSON 객체와 JSON 문자열 간의 변환이 핵심이다

예를 들면 다음과 같다. 🎜>

JSON 문자열:

var str = '{ "name": "name1","sex": "m" }';

JSON 개체:

var obj = { "name": "name1", "sex": "w" };

1. JSON 문자열을 JSON 개체로 변환합니다.

위의 str1을 사용하려면 먼저 다음 방법을 사용하여 JSON 객체로 변환해야 합니다:

var obj = eval('(' + str + ')');
//由JSON字符串转换为JSON对象,必须把文本包围在括号中,这样才能避免语法错误: "(" + str+ ")

또는

var obj = $.parseJSON(str);
// 将JSON字符串转化为JSON对象 (jQuery)

또는

var obj= str.parseJSON();
//由JSON字符串转换为JSON对象

또는

var obj= JSON.parse(str);
//由JSON字符串转换为JSON对象

그러면 다음과 같이 읽을 수 있습니다.

Alert(obj.name);
Alert(obj.sex);

Special 참고: obj가 원래 JSON 개체인 경우 eval() 함수를 사용하여 변환한 후에도 여전히 JSON 개체이지만(여러 번 변환된 경우에도) 다음을 사용한 후에는 문제(구문 예외 발생)가 발생합니다. JSON.Parse() 함수.

2. toJSONString() 또는 전역 메서드 JSON.stringify()를 사용하여 JSON 개체를 JSON 문자열로 변환할 수 있습니다.

예:

var str=obj.toJSONString();
//将JSON对象转化为JSON字符

또는

var str=JSON.stringify(obj);
//将JSON对象转化为JSON字符
alert(str);

요약:

우리는 또한 무슨 일이 일어나고 있는지 확인했습니다. 위에서 일반적으로 유형 변환에는 두 가지 유형이 있는데, 하나는 JavaScript와 함께 제공되는 파서이고 다른 하나는 JSON 파서입니다. JavaScript 파서는 모든 JavaScript 코드를 컴파일하고 실행할 수 있으므로 여기에는 잠재적인 보안이 숨겨져 있습니다. 문제는 JSON 파서가 JSON 텍스트만 인식할 수 있고 스크립트를 컴파일하지 않기 때문에 더 안전하고 JSON 파서가 더 빠르다는 점입니다.

위 메서드 중 js에 포함된 eval() 함수를 제외한 나머지 메서드는 모두 json.js 패키지에서 왔습니다. JSON의 새 버전은 API를 수정하고 JSON.stringify() 및 JSON.parse() 메서드를 모두 Javascript의 내장 개체에 삽입합니다. 전자는 Object.toJSONString()이 되고 후자는 String이 됩니다. . toJSONString() 및 parseJSON() 메서드를 찾을 수 없다는 메시지가 표시되면 json 패키지 버전이 너무 낮다는 의미입니다.

이 글이 JavaScript 프로그래밍에 종사하는 모든 분들께 도움이 되기를 바랍니다.

JSON 문자열과 JSON 개체 간의 상호 변환에 대한 자세한 예를 보려면 PHP 중국어 웹사이트에서 관련 기사를 주목하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.