7. Object
다음과 같은 JS 객체가 있다고 하자.
const obj = {
a: 'lotuxsoo',
b: 23,
c: true,
d: {}
};
obj 객체를 구성하는 전체 키를 배열로 얻는 코드는 다음과 같다.
console.log(Object.keys(obj)); // Array ["a","b","c","d"]
obj 객체를 구성하는 전체 값을 배열로 얻는 코드는 다음과 같다.
console.log(Object.values(obj)); // Array ["lotuxsoo", 23, true, Object { }]
object[key]와 object.key는 다음과 같이 사용한다.
const message = { id:1, message:'react-native' };
console.log(message['id']);
console.log(message.message);
다음 예제에서 error가 발생하는 지 맞춰라. (undefined.key 관련)
const message = { id:1, message:'react-native' };
console.log(message.sender?.name);
8. 즉시실행함수
const result = (function (a,b) {
return a+b;
}) (1,2);
9. 함수- 파라미터 기본값 설정
function printName(firstName='suyeon', lastName) {
console.log(`${firstName} ${lastName}`);
}
printName();
const sum = (a,b=100) => {
console.log(a+b);
};
sum(1);
10. try-catch-finally
11. 묵시적 반환
const langs = ['ko', 'en', 'fr'];
const newLangs = langs.map( function(item) {
return 'lang: '+ item;
});
const newLangs = langs.map(item => 'lang: '+ item)
12. 전개 구문 (스프레드 오퍼레이터 문법)
- 스프레드 연산자(...)를 통해 배열, 문자열, 객체 등의 병합, 복사가 가능하다.
- Rest 파라미터로 사용하여 함수의 매개변수에 넣는 값을 모두 모아서 "배열"에 집어넣는다.
- 함수 호출 시에도 사용하여 배열 형태에서 바로 함수 인자로 넣어줄 수 있다.
function sum(a,b,c) {
return a+b+c;
}
const numbers = [1,2,3];
const result = sum(...numbers);
const newNumbers = [...numbers, 4, 5];
const sender = {firstName:'suyeon', age:23};
const newSender = {...sender, lastName:'choi'};
13. 객체 리터럴 표기법
- JS의 유연함과 강력함을 대표하는 객체 생성 방식
- 객체를 생성하기 위해 클래스를 정의하거나 new 연산자를 사용하지 않더라도 손쉽게 객체를 생성할 수 있다.
const userName= 'suyeon';
const age= 23;
const sender= {userName, age};
14. 구조 분해 할당
- 배열이나 객체의 속성을 해체하여 그 ㄱ밧을 개별 변수에 담을 수 있게 하는 JS 표현식이다.
const numbers = [1,2,3,4,5];
const [x, y] = numbers;
const [a,b,c,d,e,f] = numbers;
const user = {usename:'suyeon', age:23};
const {username, address} = user;
15. Promise와 async-await
16. import와 export
'JavaScript' 카테고리의 다른 글
로컬스토리지 vs 세션스토리지 (0) | 2022.02.19 |
---|---|
JS 기본개념 (0) | 2022.02.12 |