-
[Javascript 200] 배열과 객체 (ES6기능)To infinity/Javascript 이론 2021. 6. 26. 10:37
단축 속성명
속성을 빠르게 가져오는 방법
//단축속성명 ES6 var Firstname2 = 'Buzz' var Lastname2 = 'Lightyear' var members2 = {} var addFamily2 = function(age, name, role){ this.members[role] = { age: age, name: name } } var getHeadcount2 = function(){ return Object.keys(this.members).length } // 각각의 변수로 선언된 변수값들을 하나의 객체로 모으자! var obj_toystory2 = {Firstname2, Lastname2, members2, addFamily2, getHeadcount2} console.log(obj_toystory2) //결과값 { Firstname2: 'Buzz', Lastname2: 'Lightyear', members2: {}, addFamily2: [Function: addFamily2], getHeadcount2: [Function: getHeadcount2] }
- 단축 속성: 변수가 미리 준비되어있는 경우 활용 가능, 변수명으로 속성의 키와 값을 한번에 정의 가능
즉, 변수들이 일일이 정의되어 있을 때 하나의 객체로 만들 수 있는 기능.
프로퍼티키 생성 (속성계산명)
프로퍼티키를 정의하는 방법
//속성계산명 var obj ={}; //객체생성 for (var i = 0; i < 4; i++){ obj['key' + i] = i; } console.log(obj); // 동적으로 프로퍼티키를 변경하면서 생성할 수 있다. var profile = 'buzz:95' var toy = { [profile] : true, name: profile.split(':')[0] }; console.log(toy);
- 유동적으로 프로퍼티 키를 바꿔가며 값을 넣을 때 좋을 것 같다.
비구조화 할당
배열이나 객체의 값을 새로운 변수에 쉽게 할당하는 방법
// 비구조화할당 //객체 var obj = {a:1, b:2, c:3, d:40}; var {a, c} = obj; // var a = 1 을 만듦 var {a:newA =10, f:newF = 50} = obj; // 값이 undefined인 경우에 해당 할당값을 넣는다. a엔 값이 있으니 무시되고 f엔 값에 없으니 50이 할당된다.
//배열 var arr = [1, 2, 3, 40]; var [a,b, ...rest] = arr; // var a = 1, var b= 2, var rest = 3,40 //배열의 키는 인덱스니까 (즉, 없으니까) []안에 키를 지정해주는 것임. getArr = [1,2,3,4,5,6]; [a,,c,,e] = getArr; console.log(c); // 콤마로 띄어진 값은 가져오지 않는다. 인덱스와 일치하는 값을 가져온다.
'To infinity > Javascript 이론' 카테고리의 다른 글
[Javascript] this (0) 2021.06.27 [Javascript 200] Symbol (0) 2021.06.27 [Javascript 200] 배열과 객체 (0) 2021.06.26 [Javascript] 제어문 (0) 2021.06.16 [Javascript] 함수 (0) 2021.06.14