인프런 워밍업 클럽스터디 3기 FE - 1주차 발자국

강의


[ 변수 ]

var : 중복선언, 재할당 가능 , 마지막에 할당된 값이 변수에 저장, 함수스코프

let : 중복선언 불가, 재할당 가능, 블록스코프

const : 재선언, 재할당 불가능 -> 상수 , const 선언했어도 배열과 객체의 값은 변경 가능, 블록스코프

 

[This]

Function => window.object

Method => object

Constructor Function => {}

화살표함수 this는 항상 상위스코프 this를 가르키게 된다

 

메소드 사용하기

- call()

call 메소드는 함수를 호출하는 함수이며, 첫번째 매개변수로 어떤한 것을 전달해주면 호출되는 함수의 this 안에 window 객체가 아닌 전달받은 것을 받게 됨

 

- apply()

call 메소드와 사용법은 동일, 인수를 넣을때는 [] 로 넣는다

 

- bind()

function func(language){

If(language == ‘kor’){

console.log(`language: ${this.korGreeting}`);

}

else{

console.log(`language: ${this.engGreeting}`);

}

}

const greeting = {

korGreeting : ‘ 안녕‘,

engGreeting: ‘Hello’,

}

func.bind(greeting);

// func() 함수에서 this에다가 greeting 객체를 바인딩 시켜준다는 개념

const boundFunc = func.bind(greeting);

// 위 변수에다가 바인딩 시켜준 함수를 할당

boundFunc(‘kor’);

// 변수에 담겨진 함수를 호출, 호출할때 인수값 넣기

 

[ 이벤트루프 ]

setTimeout()

전역 setTimeout() 메서드는 만료된 후 함수나 지정된 코드 조각을 실행하는 타이머를 설정합니다.

두번째 매개변수로 들어간 밀리초 단위가 지난 후 첫번째 매개변수인 콜백함수가 호출됨

 

[ closure ]

다른 함수 내부에 정의된 함수가 있는 경우 외부함수가 실행을 완료하고 해당 변수가 해당 함수 외부에서 더 이상 액세스할 수 없는 경우에도 해당 내부 함수는 외부 함수의 변수 및 범위에 엑세스할 수 있습니다.

 

[ map ,filter,reduce 메소드 ]

- map

map() 메서드는 배열 내의 모든 요소 각각에 대하여 주어진 함수를 호출한 결과를 모아 새로운 배열을 반환

 

- filter

filter()메서드는 주어진 함수의 테스트를 통과하는 모든 요소를 모아 새로운 배열로 반환

 

- reduce

reduce()메서드는 배열의 각 요소에 대해 주어진 리듀서 함수를 실행하고, 하나의 결과값을 반환

리듀서 함수는 네개의 인자를 가집니다.

1. 누산기(acc) - 여기에 계속 값이 쌓임

2. 현재값(cur)

3. 현재 인덱스(idx)

4. 원본 배열(src)

[ 0, 1, 2, 3, 4].reduce(function(accumulator, currentValue, currentIndex, array){

return accumulator + currentValue;

})

 

[ undefined 와 null 차이 ]

undefined는 아무값도 할당 받지 않은 상태

null은 비어있는, 존재하지 않는 값을 의미

변수에 의도적으로 값이 없다고 할때는 null 사용

 

미션


[ 음식 메뉴 앱 ]

스타일 dispaly로 메뉴 클릭 시 해당 메뉴 이미지와 글이 보이도록 구현하였고 forEach에 대해 공부할 수 있었다

image

[ 가위 바위 보 게임 ]

공통함수로 만들려고 했고 동작을 생각하면 코드를 어떻게 구성할지 생각할 수 있었다

image

 

 

 

댓글을 작성해보세요.

채널톡 아이콘