JSON 데이터는 하위 집합을 기반으로 하며 프로그래밍 언어와 완전히 독립적인 텍스트 형식을 사용하여 데이터를 저장하고 표현하는 경량 데이터 교환 형식입니다. 단순성과 명확한 계층 구조 덕분에 JSON은 이상적인 데이터 교환 언어입니다.
JSON데이터는 다음과 같습니다.
JSON(JavaScript Object Notation, JS Object Notation)은 경량 데이터 교환 형식입니다. ECMAScript(w3c에서 개발한 js 사양)의 하위 집합을 기반으로 하며 프로그래밍 언어와 완전히 독립적인 텍스트 형식을 사용하여 데이터를 저장하고 표현합니다. 단순성과 명확한 계층 구조 덕분에 JSON은 이상적인 데이터 교환 언어입니다. 사람이 읽고 쓰기가 쉽고, 기계가 구문 분석하고 생성하기도 쉽고 네트워크 전송 효율성이 효과적으로 향상됩니다. ——Baidu Encyclopedia
데이터 전송은 코드를 입력하거나 프런트엔드 및 백엔드 상호 작용을 할 때 자주 접하는 시나리오입니다. 데이터에 통일된 형식을 제공하면 데이터를 작성하고 구문 분석하는 데 도움이 됩니다.
json은 백엔드와의 데이터 상호 작용에 널리 사용되는 데이터 형식입니다.
관련 학습 권장 사항: javascript 비디오 튜토리얼
JSON의 탄생
JSON은 데이터 교환 형식인 (JavaScript Object Notation, JS Object Notation)입니다. JSON이 등장하기 전에는 모든 사람이 XML을 사용하여 데이터를 전송했습니다. XML은 일반 텍스트 형식이므로 네트워크에서 데이터를 교환하는 데 적합합니다. XML 자체는 복잡하지 않지만, DTD, XSD, XPath, XSLT 등 복잡한 사양이 많이 추가되면서 일반 소프트웨어 개발자라면 누구나 XML을 접하면 결국 부담감을 느낄 것입니다. 몇 달이 지나면 XML 사양을 파악하지 못할 수도 있습니다.
드디어 2002년 어느 날, 동급생 Douglas Crockford는 오랫동안 일부 거대 소프트웨어 회사에 속아 곤경에 처해 있던 소프트웨어 엔지니어를 구하기 위해 초경량 JSON을 발명했습니다.
JSON은 매우 간단하기 때문에 웹 세계에서 빠르게 인기를 얻었고 ECMA 표준이 되었습니다. 거의 모든 프로그래밍 언어에는 JSON을 구문 분석하기 위한 라이브러리가 있으며, JavaScript에서는 JSON 구문 분석이 내장되어 있기 때문에 JSON을 직접 사용할 수 있습니다. JavaScript 객체를 JSON으로 변환하는 것은 객체를 JSON 형식의 문자열로 직렬화하여 네트워크를 통해 다른 컴퓨터로 전달할 수 있도록 하는 것입니다. JSON 형식의 문자열을 받은 경우 이를 JavaScript 개체로 역직렬화하기만 하면 되며 이 개체를 JavaScript에서 직접 사용할 수 있습니다.
Escape
jsonp 인터페이스나 js 파일을 호출할 때 파일 인코딩이 다르기 때문에 문자가 깨져 보이는 문제가 발생합니다. 파일에 영어가 아닌 문자가 포함되어 있고 호출 시 파일 인코딩이 일관되지 않으면 잘못된 문자도 나타납니다.
이것이 데이터가 통일된 형식이어야 하는 이유입니다.
JSON은 JavaScript 객체와 문자열 값 사이의 빠른 변환을 가능하게 하기 때문에 Ajax 애플리케이션에 효율적인 형식입니다. JSON은 객체 전달을 위한 구문입니다.
JSON은 문자열화 및 내장 객체를 제공하는 구문입니다. 구문 분석 방법
stringify는 js 객체를 json 표준을 따르는 문자열로 변환합니다.
parse는 json 표준을 따르는 문자열을 js 객체로 변환합니다.
JSON 쌍 값 유형 및 형식에는 엄격한 규정이 있습니다
복합 유형의 값은 배열 또는 객체만 가능하며 함수, 정규식 객체 또는 날짜 객체는 될 수 없습니다.
단순한 값 유형은 문자열, 숫자 값(10진수로 표시해야 함), 부울 값, null(NaN, Infinity, -Infinity 및 undefinity는 사용할 수 없음)의 네 가지 유형뿐입니다.
문자열은 큰따옴표로 표시해야 하며 작은따옴표는 사용할 수 없습니다.
오브젝트의 키 이름은 큰따옴표로 묶어야 합니다.
배열이나 개체의 마지막 구성원 뒤에는 쉼표를 추가할 수 없습니다.
PS: 빈 배열과 빈 개체는 모두 정규화된 JSON 값이며 null 자체도 정규화된 JSON 값이라는 점에 유의해야 합니다.
JSON의 구문 규칙
JSON의 구문 규칙은 매우 간단하며 "우아하고 완벽하다"고 할 수 있습니다. 요약하자면 다음과 같습니다.
배열은 대괄호("[])로 표시됩니다. ").
객체는 중괄호("{}")로 표시됩니다.
이름/값 쌍(이름/값)은 배열과 개체로 결합됩니다.
이름(name)은 큰따옴표 안에 들어가며, 값(value)에는 문자열, 숫자값, 부울값, null, 객체, 배열이 포함됩니다.
병렬 데이터는 쉼표(",")로 구분됩니다.
예
JSON 데이터의 쓰기 형식은 이름/값 쌍입니다.
이름/값 쌍 조합의 이름은 큰따옴표로 먼저 작성되고 값 쌍은 마지막에 콜론으로 구분되어 작성됩니다.
값은 다음과 같습니다: 숫자(정수 또는 부동 소수점 숫자), 문자열(큰따옴표 안), 부울 값(true 또는 false), 배열(대괄호 안), 개체(중괄호 안), null
varjson= {"password":123456,"name":"myname","Booleans":true,"Array":[x,y,z],"object":{}}
또는 중첩 사용
Escape 개요
왜 탈출해야 하나요? js에서는 처리를 위해 js 객체를 사용하지만 백엔드와 데이터를 교환할 때는 지정된 json 형식으로 문자열을 보내기 때문에 백엔드로 데이터를 보내거나 받을 때 이스케이프해야 합니다.
{name:"myname",password:123456} "{"name":"myname","password":123456}"
json 문자열을 js 객체의 경우 구문 분석 메서드를 호출합니다.
js object = JSON.parse(json string);
js 객체를 json 문자열로 변환하고 stringify 메서드를 호출합니다.
json string = JSON.stringify (js 객체);
관련 추천: 프로그래밍 비디오 코스
위 내용은 JSON 데이터 란 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!