JS 튜토리얼

제이에스 홈 JS 소개 JS 어디로 JS 출력 JS 문 JS 구문 JS 코멘트 JS 변수 제이에스렛 JS 상수 JS 연산자 JS 산술 JS 할당 JS 데이터 유형 JS 함수 JS 객체 JS 이벤트 JS 문자열 JS 문자열 메서드 JS 문자열 검색 JS 문자열 템플릿 JS 번호 JS 숫자 메서드 JS 배열 JS 배열 메서드 JS 배열 정렬 JS 배열 반복 JS 배열 상수 JS 날짜 JS 날짜 형식 JS 날짜 가져오기 메서드 JS 날짜 설정 방법 JS 수학 JS 랜덤 JS 부울 JS 비교 JS 조건 JS 스위치 JS 루프 In에 대한 JS 루프 의 JS 루프 JS 루프 동안 JS 브레이크 JS 이터러블 JS 세트 JS 맵 JS 유형 JS 유형 변환 JS 비트와이즈 JS 정규 표현식 JS 오류 JS 범위 JS 호이스팅 JS 엄격 모드 JS 이 키워드 JS 화살표 함수 JS 클래스 JS JSON JS 디버깅 JS 스타일 가이드 JS 모범 사례 JS 실수 JS 성능 JS 예약어

JS 버전

JS 버전 JS 2009(ES5) JS 2015(ES6) JS 2016 JS 2017 JS 2018 JS IE / 엣지 JS 연혁

JS 객체

객체 정의 개체 속성 개체 메서드 개체 표시 개체 접근자 객체 생성자 개체 프로토타입 객체 반복 가능 객체 세트 객체 맵 개체 참조

JS 함수

기능 정의 기능 매개변수 함수 호출 함수 호출 기능 적용 함수 클로저

JS 클래스

수업 소개 클래스 상속 클래스 정적

JS 비동기

JS 콜백 JS 비동기 JS 약속 JS 비동기/대기

JS HTML DOM

DOM 소개 DOM 메서드 DOM 문서 DOM 요소 DOM HTML DOM 양식 DOM CSS DOM 애니메이션 DOM 이벤트 DOM 이벤트 리스너 DOM 탐색 DOM 노드 DOM 컬렉션 DOM 노드 목록

JS 브라우저 BOM

JS 창 JS 화면 JS 위치 JS 연혁 JS 네비게이터 JS 팝업 경고 JS 타이밍 JS 쿠키

JS 웹 API

웹 API 소개 웹 양식 API 웹 기록 API 웹 스토리지 API 웹 작업자 API 웹 가져오기 API 웹 지리적 위치 API

JS 아약스

AJAX 소개 AJAX XMLHttp AJAX 요청 AJAX 응답 AJAX XML 파일 AJAX PHP AJAX ASP AJAX 데이터베이스 AJAX 애플리케이션 AJAX 예제

JS JSON

JSON 소개 JSON 구문 JSON 대 XML JSON 데이터 유형 JSON 구문 분석 JSON 문자열화 JSON 객체 JSON 배열 JSON 서버 JSON PHP JSON HTML JSON JSONP

JS 대 jQuery

jQuery 선택기 제이쿼리 HTML 제이쿼리 CSS 제이쿼리 DOM

JS 그래픽

JS 그래픽 JS 캔버스 JS 플로틀리 JS 차트.js JS 구글 차트 JS D3.js

JS 예제

JS 예제 JS HTML DOM JS HTML 입력 JS HTML 객체 JS HTML 이벤트 JS 브라우저 JS 편집기 JS 연습 JS 퀴즈 JS 인증서

JS 참조

자바스크립트 객체 HTML DOM 객체


JSON .parse()


JSON의 일반적인 용도는 웹 서버와 데이터를 교환하는 것입니다.

웹 서버에서 데이터를 수신할 때 데이터는 항상 문자열입니다.

로 데이터를 파싱하면 데이터 JSON.parse()가 JavaScript 객체가 됩니다.


예 - JSON 구문 분석

웹 서버에서 다음 텍스트를 받았다고 상상해 보십시오.

'{"name":"John", "age":30, "city":"New York"}'

JavaScript 함수 JSON.parse()를 사용하여 텍스트를 JavaScript 객체로 변환:

const obj = JSON.parse('{"name":"John", "age":30, "city":"New York"}');

텍스트가 JSON 형식인지 확인하십시오. 그렇지 않으면 구문 오류가 발생합니다.

페이지에서 JavaScript 개체를 사용합니다.

예시

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML = obj.name;
</script>

JSON으로 배열

JSON.parse()배열에서 파생된 JSON을 사용할 때 메서드는 JavaScript 개체 대신 JavaScript 배열을 반환합니다.

예시

const text = '["Ford", "BMW", "Audi", "Fiat"]';
const myArr = JSON.parse(text);


예외

파싱 ​​날짜

날짜 객체는 JSON에서 허용되지 않습니다.

날짜를 포함해야 하는 경우 문자열로 작성합니다.

나중에 날짜 개체로 다시 변환할 수 있습니다.

예시

문자열을 날짜로 변환:

const text = '{"name":"John", "birth":"1986-12-14", "city":"New York"}';
const obj = JSON.parse(text);
obj.birth = new Date(obj.birth);

document.getElementById("demo").innerHTML = obj.name + ", " + obj.birth;

또는 reviverJSON.parse() 라는 함수 의 두 번째 매개변수를 사용할 수 있습니다 .

reviver 매개변수 는 값을 반환하기 전에 각 속성을 확인하는 함수입니다.

예시

reviver 함수 를 사용하여 문자열을 날짜로 변환합니다 .

const text = '{"name":"John", "birth":"1986-12-14", "city":"New York"}';
const obj = JSON.parse(text, function (key, value) {
  if (key == "birth") {
    return new Date(value);
  } else {
    return value;
  }
});

document.getElementById("demo").innerHTML = obj.name + ", " + obj.birth;

구문 분석 기능

함수는 JSON에서 허용되지 않습니다.

함수를 포함해야 하는 경우 문자열로 작성하십시오.

나중에 함수로 다시 변환할 수 있습니다.

예시

문자열을 함수로 변환:

const text = '{"name":"John", "age":"function () {return 30;}", "city":"New York"}';
const obj = JSON.parse(text);
obj.age = eval("(" + obj.age + ")");

document.getElementById("demo").innerHTML = obj.name + ", " + obj.age();

JSON에서 함수를 사용하는 것을 피해야 합니다. 함수는 범위를 잃게 되며 eval()다시 함수로 변환하는 데 사용해야 합니다.