for(let item of basket) {
console.log(item);
}
객체의 property들과 method들을 확인할 때 사용하는 반복문
for ...in 문은 객체 자체의 모든 열거 가능한 속성들과 프로토타입 체인으로부터 상속받은 속성들에 대해 반복한다.
더 가까운 프로토타입의 속성들이 프로토타입 체인 객체로부터 더 멀리 떨어진 프로토타입의 속성보다 더 우선한다.
for ... in 의 출력은 우선 배열의 index인를 먼저 출력하고, 개체에 연결된 속성을 출력한다.
프로토타입의 속성을 출력하는데 가까운 것부터 arrCustom, objCustom을 출력한다.
const 객체명 = {
키1 : value1,
키2 : value2,
키3 : value3,
}
for(const property in 객체명){
console.log(객체명[property]);
}
const numbers = [1, 2, 3, 4, 5];
numbers.forEach((i) => console.log(i));
const 배열이름 = [1, [2, 3], "Alex", {name : "Alex", age : 28}];
const 배열이름 = new Array();
배열이름[0] = 1;
...
const 다른배열이름 = 배열.map((인덱스 이름) => {
return ~~함수~~;
})
function 함수명(number, property = 매개변수) {
~~logic~~
};
함수명(1);
{ }
로 구조분해할당을 진행한다.const 객체명 = {
키1 : 값1,
키2 : 값2
}
let {키1, 키2} = 객체명; // 단, 동일한 property 명을 써줘야함!
let {키1 : 키180, 키2 : 몸무게100} = 객체명; // 정 다르게 변수명을 주고싶다면
let {키2 : 몸무게100} = 객체명; // 만약 1개만 가져오고 싶다면
let {키1 : 키180, 키3 : 아이큐=180 } = 객체명; // 만약 없는 값을 가져온다면 default값을 설정해줄 수 있다!!
[ ]
로 구조분해할당을 진행한다.let 배열 = [1, 2, 3];
const [item1, ...item2] = 배열;
const [, , item3, item4, item5=100 ] = 배열;
item1 = 1
item2 = [2, 3]
item3 = 3
item4 = undefined
item5 = 100
...
으로 나머지 전부 할당 가능 단, 제일 뒤에 있어야함,
으로 index 건너뛰기 가능=
으로 default 설정 가능[a, b] = [b, a]
function 함수이름(){
return [1, 2, 3]
};
let [a, b, c] = 함수이름()
let data = "1, 2, 3";
let [one, two, three] = data.split(",");
function getData(a, b, ...rest) {
let [i1, i2, i3, i4, i5] = rest;
}
getData(1, 2, 3, 4, 5);
const data = [1, 2, 3];
console.log(data); // => 객체를 반환
console.log(...data); // => 각 숫자들을 반환함
const array1 = [1, 2, 3];
const array2 = [0, ...array1, 4, 5, 6]