Array.Reduce() 배열의 요소를 줄이고 단일 값을 반환하기 위해 사용. 지정된 콜백 함수를 호출하고 누적 값을 반환한다. array.reduce(function( accumulator, currentValue, currentIndex, array ) { // 누적값을 업데이트하는 로직 }, initialValue); accumulator: 현재까지의 누적값을 나타내며 initialValue로 시작한다. currentValue: 배열에서 처리 중인 현재 요소 currentIndex: 배열에서 처리 중인 현재 요소의 인덱스 array: reduce()가 호출된 원본 배열 자체 const numbers = [1, 2, 3, 4, 5]; const sum = numbers.reduce(function(..
실행 컨텍스트 자바스크립트 코드가 실행되는 환경. 동작 원리를 담고 있다. - 스코프를 기반으로 식별자와 식별자 바인딩을 관리하는 방식을 이해 - hoisting 발생 이유 이해 - closure의 동작 방식 이해 - task queue와 함께 동작하는 이벤트 핸들러와 비동기 처리 동작방식 이해 소스코드 평가 과정 모든 소스코드는 실행에 앞서 평가 과정을 커치며 코드를 실행하기 위한 준비를 한다. 1. 소스코드의 평가 실행 컨텍스트를 생성하고 편수, 함수 등의 선언문만 먼저 실행 생성된 변수나 함수 식별자를 key로 실행 컨텍스트가 관리하는 스코프에 등록 스코프 => 렉시컬 환경의 환경 레코드 2. 소스코드 실행 과정 평가 과정이 끝난 후 선언문을 제외하고 소스코드가 순차적으로 실행 = 런타임 실행에 필..
Promise란 자바스크립트 비동기 처리에 사용되는 객체 비동기 작업의 미래의 진행, 성공, 실패 상태와 처리의 순서를 표현한다. 대기 pending: 이행하지도, 거부하지도 않은 초기 상태 이행 fulfilled: 연산이 성공적으로 완료 거부 rejected: 연산 실패 Promise가 필요한 이유 프로미스는 주로 서버에서 받아온 데이터를 화면에 표시할 때 사용한다. $.get('url 주소/products/1', function(response) { // ... }); 만약 데이터를 요청하고 받아오기 위해 위의 API를 실행하면 데이터를 받아오기도 전에 마치 데이터를 다 받아온 것 마냥 화면에 데이터를 표시하려 한다. 그러면 오류가 발생하거나 빈 화면이 뜬다. 이것을 해결하기 위한 한 가지 방법이 프..
javascript의 classList 속성을 사용하여 element의 class를 사용하는 방법을 알아볼 것이다. classList는 element의 읽기전용 속성으로 CSS class의 현재 값을 반환한다. classList는 DOMTokenList 객체로 element의 class 속성을 보여준다. classList가 읽기전용이어도 다양한 메소드를 통해 class 목록을 조작할 수 있다. Add html_class이름.classList.add("CSS_class이름"); add 메소드는 class 목록에 하나 이상의 CSS class를 추가할 수 있다. Remove html_class이름.classList.remove("CSS_class이름"); remove 메소드는 class 목록에 하나 이상의 ..