일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- python tkinter 인터페이스
- 자바스크립트 객체
- 객체지향
- 한글입력 오류
- 블록 스코프
- 객체
- 맥 아파치
- 비주얼스튜디오 코드
- 한글잘림
- 자바스크립트 객체 만들기
- 맥 mysql
- max MySQL
- 배열 분해 할당
- 황반석 옮김
- jquery 사용하기
- python GUI 사용하기
- 한글입력 안됨
- max apache
- 기획자랑 사이좋게 지내고 싶다
- 제이쿼리연결
- 자바스크립트
- 자바스크립트 배열 할당
- 핵심만 골라 배우는 SwiftUI 기반의 iOS 프로그래밍
- SwiftUI 기반의 iOS 프로그래밍
- 자바스크립트 class
- 한글입력 잘림
- 생활코딩
- 한글입력 씹힘
- 닐 스미스 지음
- 제이펍 출판
Archives
- Today
- Total
반응형
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- python tkinter 인터페이스
- 자바스크립트 객체
- 객체지향
- 한글입력 오류
- 블록 스코프
- 객체
- 맥 아파치
- 비주얼스튜디오 코드
- 한글잘림
- 자바스크립트 객체 만들기
- 맥 mysql
- max MySQL
- 배열 분해 할당
- 황반석 옮김
- jquery 사용하기
- python GUI 사용하기
- 한글입력 안됨
- max apache
- 기획자랑 사이좋게 지내고 싶다
- 제이쿼리연결
- 자바스크립트
- 자바스크립트 배열 할당
- 핵심만 골라 배우는 SwiftUI 기반의 iOS 프로그래밍
- SwiftUI 기반의 iOS 프로그래밍
- 자바스크립트 class
- 한글입력 잘림
- 생활코딩
- 한글입력 씹힘
- 닐 스미스 지음
- 제이펍 출판
Archives
- Today
- Total
java,javascript,android,php,sql,공부용,메모용
구조분해 할당 / ES2015 & ES6 - 05 본문
javascript, jQuery & Node.js/Node.js 사용전 자바스크립트
구조분해 할당 / ES2015 & ES6 - 05
yy_dd2 2022. 11. 16. 17:49반응형
구조분해 할당은 책만 보고는 쉽게 이해가 어려웠다
유툽 참고해서 내용을 이해하고 책을 봤다
// * 구조분해 할당
// - 객체와 배열에서 속성이나 요소를 쉽게 꺼낼 수 있다
// * 구조분해 할당 쉬운 예시
let users = ['Mike', 'Tom', 'Jane'];
let [user1, user2, user3] = users;
/*
let user1 = users[0];
let user2 = users[1];
let user3 = users[2];
과 같다
*/
let str = "Mike-Tom-Jane";
let [user4, user5, user6] = str.split('-');
console.log(`${user1} ${user2} ${user3} / ${user4} ${user5} ${user6}`);
// Mike Tom Jane / Mike Tom Jane
// * 기본값 할당
let [a,b,c] = [1,2];
// c는 undefiend
let [d=3, e=4, f=5] = [1,2];
console.log(`${a} ${b} ${c} / ${d} ${e} ${f}`);
//1 2 undefined / 1 2 5
// * 객체의 구조분해
let user = {name: 'Mike', age: 30};
let {name, age} = user; //let {age, name} = user; 순서 상관 없음
let {name: userName, age: userAge} = user; // 이름도 변경 가능함
/*
let name = user.name;
let age = user.age;
*/
// * 기본값
let user0 = {name: 'Mike', age:30};
//let {name2, age2, gender} = user0;
let {name2, age2, gender = 'male'} = user0; //기본값 할당
// 구조분해 할당 문법
// 기존 사용 문법은
var array = ['nodejs', {}, 10, true];
var node = array[0];
var obj = array[1];
var bool = array[3];
// 이렇게 만든 다음에 값을 대입했음
// 지금은 간단하게
const array = ['nodejs', {}, 10, true];
const [node, obj, , bool] = array;
//////
var candyMachine = {
status : {
name: 'node',
count: 5,
},
getCandy: function (){
this.status.count--;
return this.status.count;
},
};
var getCandy = candyMachine.getCandy;
var count = candyMachine.status.count;
// 아래 처럼 사용이 가능해졌다
const candyMachine2 = {
status2 : {
name2: 'node',
count2: 5,
},
getCandy2(){
this.status2.count--;
return this.status2.count;
},
}
const { getCandy2 , status2 : { count2 } } = candyMachine2;
다른 유툽 내용 보고 확인하니 이전에 내가 썼던 코드들을 더 쉽고 간편하게 만들어주는 기능들이였고
이 기능을 쓰지 않으면 코드도 길어지고 피로도가 더 길어진다... (이미 이전에 사용했던 방법들)
옛날 코드들에 배열값을 하나하나 저장해서 사용하는데 이제 그러지 않아도 될 듯 하다...
아는 만큼 편해지는게 코드구나 싶었다
반응형
'javascript, jQuery & Node.js > Node.js 사용전 자바스크립트' 카테고리의 다른 글
Promise 콜백함수 프로미스로 대처 / ES2015 & ES6 - 07 (0) | 2022.12.08 |
---|---|
클래스 class / ES2015 & ES6 - 06 (0) | 2022.12.07 |
화살표 함수 function을 화살표로 사용 => / ES2015 & ES6 - 04 (0) | 2022.05.06 |
객체 리터럴 / ES2015 & ES6 - 03 (0) | 2022.05.06 |
템플릿 문자열 백틱 사용하기 `` / ES2015 & ES6 - 02 (0) | 2022.04.19 |
Comments