>웹 프론트엔드 >JS 튜토리얼 >JSON 문자열과 JSON 객체 간의 상호 변환 방법 요약

JSON 문자열과 JSON 객체 간의 상호 변환 방법 요약

php中世界最好的语言
php中世界最好的语言원래의
2018-04-24 17:16:392794검색

이번에는 JSON 문자열과 JSON 객체의 상호 변환 방법에 대해 요약해 보겠습니다. 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);

특별 참고 사항: obj가 원래 JSON 객체인 경우 eval() 함수를 사용하여 변환한 후에도 여전히 JSON 객체입니다(변환되더라도). 여러 번), 하지만 parseJSON을 사용하세요. () 함수 처리(구문 예외 발생) 후에 문제가 발생합니다.

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

예:

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

또는

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

요약:

위에서 일반적으로 두 가지 유형 변환 유형이 있다는 것을 확인했습니다. 하나는 JavaScript와 함께 제공되는 파서이고 다른 하나는 JSON입니다. JSON 파서는 JSON 텍스트만 인식할 수 있고 스크립트를 컴파일하지 않기 때문에 JSON 파싱 속도가 더 빠르다. 기계가 더 빨라요.

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

이 기사의 사례를 읽은 후 방법을 마스터했다고 생각합니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트의 다른 관련 기사를 주목하세요!

추천 도서:

jquery에서 ajax 실행 순서 조정

Ajax 및 $.ajax 예제에 대한 자세한 설명

ajax+html 파일 업로드를 쉽게 구현하는 단계는 무엇입니까

위 내용은 JSON 문자열과 JSON 객체 간의 상호 변환 방법 요약의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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