오늘도
배워봅니다.
1. Object
- 객체를 다루는 JavaScript 메소드다.
- 객체를 가공하거나 변경을 할때 사용하며 다양한 객체의 값을 갖고 올 수 있다.
a. Object.keys()const obj1 = { a: 'one', b: 2, c: false } console.log(Object.keys(obj1)) // ["a", "b", "c"] = 객체의 key값을 배열로 반환
b. Object.values()
const obj2 = { a: 'one', b: 2, c: false } console.log(Object.values(obj2)) = 객체의 value값을 배열로 반환 // ["one", 2, false]
c. Object.entries()
const obj3 = { a: 'one', b: 2, } console.log(Object.entries(obj3)) // [['a', 'one'], ['b', 2]] = 객체의 key,value값을 묶어 배열로 반환
d. Object.assign()
const obj1 = { a: 1, b: 2 } const obj2 = { b: 4, c: 5 } const result = Object.assign(obj1, obj2) // {a: 1, b: 4, c:5} // 객체를 병합
2. Throttling(쓰로틀링)
- Throttling(쓰로틀링)이란, 연이어 발생한 이벤트에 대해 일정한 딜레이를 포함 시키는것이다.
- 연속적으로 발생하는 이벤트를 무시하는 방식으로 사용됨, 지정한 딜레이 동안 호출되는 함수는 무시되는 형식이다.
- 사용자가 스크롤할때마다 이벤트를 발생시키면 서버에도 클라이언트에도 매우 큰 부하가 발생하게된다.(이를 방지하기위해 쓰로틀링을 사용해 딜레이를 주어 이벤트의 오버클릭을 방지해야한다.)
- 디바운싱의 반대, 입력이 일어난 후, 먼저 한번 실행하고, 특정시간 동안 재실행 방지
3. Debouncing(디바운싱)
- Debouncing(디바운싱)이란, 연이어 발생한 이벤트를 하나의 그룹으로 묶어 처리하는 방식으로, 마지막 혹은 처음에 처리된 함수를 처리하는 방식으로 사용된다.(마지막 호출이 발생한 후 일정시간이 지날때까지 추가적 입력이 없을때 실행)
- 마지막 입력이 일어난 후, 특정시간내에 다음 입력이 일어나지 않을 때 기능실행(디바운싱을 사용해 단어를 끝까지 입력한 후(마지막 입력) 이벤트를 호출하게하여 이벤트의 오버클릭을 방지해야한다.)
4. Lodash
- 자바스크립트 유틸리티 라이브러리
- _를 사용
- 실무에서 거의 전부 사용함