본문 바로가기
반응형

object3

IssueHandling) 객체 접근시 주의점 obj[key] vs obj.key key가 변수이고 안에 obj의 어떤 키값이 들어있다고 할 때 obj[key]는 obj 의 key변수안의 값을 키로한 obj안의 밸류를 의미하고 obj.key 는 obj의 'key' 라는 키값의 밸류를 의미한다. 즉, obj.key === obj[ 'key' ] //true 키 값을 정확히 알고, 그 키값이 string 일 때만 .key를 사용할 수 있다. obj[key]는 다양하게 대괄호 안에 값을 넣을 수 있다. string 타입 변수를 넣어도 되고, number 타입 변수를 넣어도 되고, ''로 감싼 문자열을 넣어도 되고, ''로 감싸지 않은 문자열을 넣어도 된다. 만약 string 변수처럼 문자열 타입의 데이터가 들어있는 변수를 대괄호 안에 넣고 사용하게 되면, 변수 안의 문자열이 key가 되어 .. 2020. 10. 26.
Object vs Map Map Map 객체는 key-value 쌍을 저장하며 각 쌍의 삽입 순서도 기억하는 collection이다. 어떤 값(객체, primitive value 포함)이라도 key와 value로 사용할 수 있다. Map 객체는 요소의 삽입 순서대로 엘리먼트(내부 값)를 순회한다. for(let key of map) 반복문은 각 순회에서 [key, value]로 이루어진 배열을 반환한다. **for(let key "in" map) 반복문은 사용할 수 없다. Object vs Map Map은 key의 타입으로 "모든 타입"을 사용할 수 있다는 점을 잘 활용해야 할 것 같다. new Map()으로 인스턴스를 생성하고, .set()을 이용해서 값(value)을 삽입한다. .get()을 이용해서 값(value)에 접근 .. 2020. 10. 15.
TIL 0928 for in, Array와 Object 구분법 for ( in ) 사용법. (객체 순환시) for(let key in collection){ key ... } key를 꼭 let 키워드로 선언해서 오류가 발생하지 않도록 하자. if(Array.isArray(collection)) { ... }else{typeof collection === 'object'){ ... } 또는 if(collection instanceof Array){ ... }else if(collection instanceof Object){ ... } Array는 Object 타입 안에 속하기 때문에 array instanceof Object //true 이다. 그래서 else if로 분기 순서를 정확히 나눠주는 것이 중요. 순서에 주의. 2020. 10. 7.
반응형