객체 리터럴: let member = {name: "홍길동", email: "javauser1234@naver.com"}; //=이 아니라 (:)콜론, 프로퍼티들은 쉼표(,)로 구분-프로퍼티 접근: 프로퍼티 값에는 모든 데이터 타입의 값과 표현식을 대입할 수 있다. 변수에 대입된 객체 안의 프로퍼티 값을 읽거나 쓸 때는 마침표(.) 또는 대괄호([]), 객체에 없는 프로퍼티를 읽으려소 하면 undefined, 객체 리터럴 안에 어떠한 프로퍼티도 작성하지 않으면 빈 객체 생성
생성자 함수: 첫글자 대문자 ex) function Hobby
ES6의 클래스
자바스크립트는 prototype 기반 언어이다.
객체를 원형(prototype) 형재로 생성, 그 안에 기능을 위한 함수나 변수를 추가
prototype 기반 언어에서의 객체 생성 과정
빈 객체의 생성
아무런 기능이 없는 상태의 빈 객체를 생성
변수(필드)의 추가
빈 객체 안에 변수들을 추가해 넣는다.
함수(메서드)의 추가
빈 객체 안에 함수들을 추가해 놓는다.
JSON(Javascript Object Notation): 텍스트-기반의 경량의 데이터교환형식, 구분형식은 Javascript를 따르지만 언어로부터 완전히 독립적이기 때문에 서로 다른 프로그래밍 언어 간에 데이터 교환하기 위해 현재 가장 널리 사용되는 표기법
자바스크립트에서는 JSON이 두가지 측면으로 사용
자바스크립트의 문법으로 사용
json 자체가 하나의 데이터로서 사용
json의 특징
javascript를 기반으로 만들어졌으며 특정 언어에 종속되지 않는 완벽한 독립적인 텍스트 형식을 가지고 있다.
json 객체의 데이터는 이름(key)/값(value)의 쌍으로 구성{ }
기본형식: let 객체명 = {이름: 값, 이름: 값, 이름:값 };
(with 키워드) 객체명을 with로 선언하고 코드를 줄여준다.
let view = "";
with(info){
view+="이름:"+name;
...
}
json에 배열 데이터 할당하기
let 객체명 = {이름:값, 이름:["값1", "값2", "값n"], 이름: 값};
할당된 데이터에 접근하기 위해서는 "객체명.이름[인덱스]"로 접근
json을 포함하는 json
let 객체명 = {
하위객체명:{이름:값, 이름:값},
하위객체명:{이름:값, 이름:값},
하위객체명:{이름:값, 이름:값}
};
json 데이터의 하위 제이터로 접근하고자 할 경우는 .을 통하여 계층을 표현한다.//반복 불가능