⇒ javascript 객체 (타입 : Object)
⇒ 웹에서 쉽게 데이터를 교환하고 저장하기 위해 만든 텍스트(문자열) 기반 데이터 포맷
⇒ {”key”:”value”} 형태 ⇒ key는 문자열타입 고정, value는 여러타입 가능
클라이언트 <-> JSON <-> 서버
요청 : 객체 ⇒ 문자열 변환 ⇒ 객체 변환
응답 : 객체 ⇒ 문자열 변환 ⇒ 객체 변환
JSON.stringify() ⇒ JSON 객체를 문자열로 변환하는 함수
JSON.parse() ⇒ JSON 문자열을 JSON 객체로 변환하는 함수
// 객체를 문자열로 변환
const obj = {name:"john", age:30, city:"New York"};
const myJASON = JSON.stringify(obj);
// 문자열을 객체로 변환
const str = '{name:"john", age:30, city:"New York"}';
const myObj = JSON.parse(str);
// javascript 객체 형식 => {}형태. 속성(key)은 문자열 표시 X
// 사용자정의 객체 생성방법 1 (리터럴)
const obj1 = {
userId:'m1',
userPw:11,
arrColor:['red','blue','green'],
option:true,
// 속성값이 메소드
method:function(){
console.log('메소드');
},
// 속성값이 또 다른 객체({})
obj1Sub:{
obj1SubMethod:function(){
console.log('obj1 하위 메소드');
}
}
}
// 사용자정의 객체 생성방법 2 (인스턴스 생성)
const obj2 = new Object();
obj2.name = 'm1';
obj2.age = 30;
// 사용자정의 객체 생성방법 3 (생성자) => 생성자명 첫글자는 대문자
function Obj3(name,age) {
this.name = name;
this.age = age;
this.method = function() {
console.log('obj3 메소드')
}
}
⇒ Java의 클래스와 비슷