javascript 에서는 8가지 자료형이 있고, 그 중 7개는 원시형(primitive type), 나머지는 객체형(objective type) 이다.
객체는 new Object() 으로 생성자를 통해서 만들거나, {}으로 리터럴 문법을 이용해 만들 수 있다.
객체는 key : value 쌍이며, 모든 자료형이 올 수 있다.(객체포함)
공백이 있는 단어를 key로 사용할 경우, key를 ""로 묶어줘야함. * ex) "hi there"
프로퍼티 끝은 쉼포로 끝날 수 있음. (추가, 삭제, 이동이 쉬워짐)
상수 객체는 수정될 수 있다.
프로퍼티 접근은 점 표기(object.key) 나 대괄호 표기(object[key]) 로 할 수 있는데, 대괄호 표기만 변수를 이용한 런타임환경의 유동적인 접근 이 가능하다.
[계산된 프로퍼티, computed property]이와 유사하게, 프로퍼티 선언시 대괄호 표기를 이용하여 동적으로 프로퍼티를 할당할 수 있다.
[단축 프로퍼티, property value shorthand] 프로퍼티의 이름과 변수명이 동일하면 축약해서 쓸 수 있다.
프로퍼티의 이름엔 for, let, return 과 같은 예약어를 사용할 수 있다. 단, proto는 사용 할 수 없다. (해도 안먹힘)
숫자를 키로 넣으면 자동으로 문자열로 바뀐다.
존재하지 않는 프로프티에 접근하면 "undefinded"를 반환한다. (확실하게 확인하고 싶으면 "key" in object 써도 좋음)
프로퍼티는 특별한 방식으로 정렬된다.
파이썬의 key-value 딕셔너리와 매우 비슷해서 크게 헷갈리지는 않았다. 문제는…. 내가 있는 회사에서 아직 객체를 쓸만한 무엇인가는 하지 않는다는 점… 크흑 해보고 싶은데 ㅠㅠ
아마 리액트로 하면 할 것 같다. 빨리 그날이 오기를 :)