brograming
JSON.parse() 본문
JSON.parse() 메서드는 JSON 문자열의 구문을 분석하고, 그 결과에서 JavaScript 값이나 객체를 생성한다.
const json = '{"result":true, "count":42}'; => 문자열
const obj = JSON.parse(json); // 객체변환
console.log(obj.count);
// Expected output: 42
console.log(obj.result);
// Expected output: true
const json은 문자열이기때문에 json.resutl / json.count로 접근하지 못한다.JSON.parse()를 통해서 const json을 객체로 변환하여 obj에 담는다. 그 다음에야 obj.result / obj.count로 접근 가능하다.
예)
JSON.parse('{}'); // {}
JSON.parse('true'); // true
JSON.parse('"foo"'); // "foo"
JSON.parse('[1, 5, "false"]'); // [1, 5, "false"]
JSON.parse('null'); // null
배열
<script type = "text/javascript">
window.onload = () => {
let arr = ['aaa', 'bbb', 'ccc']; // 배열
for(let val of arr){ // for문을 of로 돌리면 값을 꺼냄
document.write(val + "<br/>");
}
aaa
bbb
ccc
객체
let obj = {"name":"aaaa", "num":1}; // 객체
for(let key in obj){ // for문을 in으로 돌리면 키를 꺼냄
document.write(key + ": " + obj[key] + "<br/>");
}
name : aaaa
num : 1
문자열(JSON.parse() )
let txt = '{"name":"bbbb", "num":2}'; // 문자열
let obj2 = JSON.parse(txt); // 파싱
for(let key in obj2){
document.write(key+": " + obj2[key] + "<br/>");
}
name : bbbb
num : 2
JSON.parse()를 하는 이유
문자열(JSON.parse() ) X
let txt = '{"name":"bbbb", "num":2}'; // 문자열
for(let key in txt){ // parsing을 하는 이유 : 문자열 그대로를 배열로 인식함.
document.write(key+": " + txt[key] + "<br/>");
}
0 : {
1 : "
2 : n
3 : a
4 : m
5 : e
6 : "
7 : :
8 : "
9 : b
10 : b
11 : b
12 : b
13 : "
14 : ,
15 :
16 : "
17 : n
18 : u
19 : m
20 : "
21 : :
22 : 2
23 : }'[JAVASCRIPT]' 카테고리의 다른 글
| event handler (0) | 2023.03.25 |
|---|---|
| 버튼 추가, 제거 (getElementById, appendChild) (0) | 2023.03.25 |
| alert 알림창(경고창) 띄우기 (0) | 2023.03.22 |
| var, let, const (0) | 2023.03.22 |