함수 폼을 사용할 때 업데이트가 이전 state에 의존하는 경우에만 사용해야 한다. useState를 사용할 때 다른 state의 값을 기반으로 state의 값을 변경하면 위험하다. 제 시간에 처리되지 않아 순서가 보장되지 않을 수 있다.함수형 업데이트는 useStat
REST(REpresentional State Transfer)http를 기반으로 클라이언트가 서버의 리소스에 접근하는 방식을 규정한 아키텍쳐API는 "Application Programming Interface"의 약자로, 응용 프로그램 간에 데이터를 주고받을 수 있
Ajax란 자바스크립트를 사용하여 브라우저가 서버에게 비동기 방식으로 데이터를 요청하고, 서버가 응답한 데이터를 수신하여 웹페이지를 동적으로 갱신하는 프로그래밍 방식을 말한다.브라우저에서 제공하는 Web API인 XMLHttpRequest 객체를 기반으로 동작한다.XM
실행 컨텍스트 스택에 함수 실행 컨텍스트가 푸시되는 것은 바로 함수 실행 컨텍스트가 실행 컨텍스트 스택에 푸시되기 때문이다.함수 실행 순서는 실행 컨텍스트 스택으로 관리한다.자바스크립트 엔진은 단 하나의 실행 컨텍스트를 갖는다.이는 함수를 실행할 수 있는 창구가 단 하
자바스크립트 엔진은 싱글 스레드로 동작한다.타이머 함수는 비동기 처리 방식으로 동작한다.짧은 시간 간격으로 이벤트가 연속해서 발생하면 이벤트 핸들러를 호줄하지 않다가 일정 시간이 경과한 이후에 이벤트 핸들러가 한 번만 호출되도록 한다.짧은 시간 간격으로 발생하는 이벤트
DOM(Document Object Model)은 html 문서의 계층적 구조와 정보를 표현이를 제어할 수 있는 API, 즉 프로퍼티와 메서드를 제공하는 트리 자료구조다.HTML 요소는 HTML 문서를 구성하는 개별적인 요소를 의미.HTML 요소는 렌더링 엔진에 의해
리액트에서 상태를 업데이트할 때, 기존 상태에 의존하는 값으로 업데이트를 수행해야 할 때가 있다. 이때 "함수 양식"을 사용하여 상태를 업데이트할 수 있다.함수 양식은 이전 상태를 매개변수로 받고, 새로운 상태를 반환하는 함수다. 이전 상태를 받아 새로운 상태를 계산하
대부분의 프로그래밍 언어는 운영체제나 가상 머신 위에서 실행되지만 웹 애플리케이션의 클라이언트 사이드 자바스크립트는 브라우저에서 HTML, CSS와 함께 실행된다. 따라서 브라우저 환경을 고려할 때 더 효율적인 클라이언트 사이드 자바스크립트 프로그래밍이 가능하다.
ES6 이전까지 자바스크립트의 함수는 별다른 구분 없이 다양한 목적으로 사용되었다. 일반적인 함수로서 호출 new 연산자와 함께 호출되어 인스턴스를 생성할 수 있는 생성자 함수로서 호출 객체에 바인딩되어 메서드로서 호출 사용 목적에 따라 명확하게 구분되지
위의 코드는 clickHandler 컴포넌트로 여러 동작들을 하나의 소규모 동작을 수행하는 작은 코드들로 나누어 관리할 수 있게끔 하는 컴포넌트다.리액트에서 값을 수정하고자 할때 값을 =연산자로 할당하면 리엑트에서 인지하지 못하여 업데이트를 해주지 않습니다. 따라서 값
생성자 함수 내부에서는 프로퍼티 또는 메서드를 추가히기 위해 자신이 생성할 인스턴스를 참조할 수 있어야 한다. 하지만 생성자 함수에 의한 객체 생성 방식은 먼저 생성자 함수를 정의한 이후 new 연산자와 함께 생성자 함수를 호출하는 단계가 추가로 필요하다. 생성자 함수
자바스크립트는 프로토타입 기반 객체지향 언어다.프로토타입 기반 객체지향 언어는 클래스가 필요 없는 객체지향 프로그래밍 언어다.생성자 함수와 프로토타입을 통해 객체지향 언어의 상속을 구현할 수 있다.하지만 클래스 기반 언어에 익숙한 프로그래머들은 프로토타입 기반 프로그래
클로저는 함수와 그 함수가 선언된 렉시컬 환경과의 조합이다. 렉시컬 스코프 자바스크립트 엔진은 함수를 어디서 호출했는지가 아니라 함수를 어디에 정의했는지에 따라 상위 스코프를 결정. 이를 렉시컬 스코프 = 정적 스코프 라고 한다. 렉시컬 환경의 "외부 렉시컬 환
소스코드를 4가지 타입으로 구분하는 이유는 소스코드의 타입에 따라 실행 컨텍스트를 생성하는 과정과 관리 내용이 다르기 때문:전역에 존재하는 소스코드를 말한다. 전역에 정의된 함수, 클래스 등의 내부 코드는 미포함전역 변수를 관리하기 위해 최상위 스코프인 전역 스코프를
객체동작을 나타내는 메서드는 자신이 속한 객체의 상태, 즉 프로퍼티를 참조하고 변경할 수 있어야 한다.객체 리터럴 방식으로 생성한 객체의 경우 메서드 내부에서 메서드 자신이 속한 객체를 가리키는 식별자를 재귀적으로 참조할 수 있다.하지만 생성자 함수로 인ㄱ스턴스를 생성
:ECMAScript 사양에 정의된 객체를 말한다. 애플리케이션 전역의 공통 기능을 제공한다.표준 빌트인 객체는 자바스크립트 실행 환경과 관계없이 언제나 사용할 수 있다.표준 빌트인 객체는 전역 객체의 프로퍼티로서 제공된다. 따라서 별도의 선언 없이 전역 변수처럼 언제
잠재적인 오류를 발생시키기 어려운 개발 환경을 만들고 그 환경에서 개발하는 것전역에 적용한 strick mode는 스크립트 단위로 적용스크립트 단위 적용은 다른 스크립트에 영향 없이 적용된다그렇지만 nob=n-script와 혼용하는 것은 오류 발생 가능성이 높기에 즉시
자바스크립트는 명령령, 함수형, 프로포타입 기반 객체지향 프로그래밍을 지원하는 멀티 패러다임 프로그래밍 언어다. 클래스와 생성자 함수는 모두 프로토타입 기반의 인스턴스 생성, 정확히 동일하게 동작 안함 클래스는 프로토타입 기반 객체 생성의 새로운 메커니즘이다. 객체
무명의 리터럴로 생성 가능, 런타임에 생성이 가능.변수나 자료구조에 저장할 수 있다.함수의 매게변수에 전달할 수 있다.함수의 반환값으로 사용할 수 있다.일급 객체로서 함수가 가지는 가장 큰 특징은 일반 객체와 같이 함수의 매개변수에 전달할 수 있고, 함수의 반환값으로
new 연산자와 함께 Object 생성자 함수를 호출하면 빈 객체를 생성하여 반환한다.빈 객체를 생성한 이후 프로퍼티 또는 메서드를 추가하여 객체를 완성할 수 있다.this는 객체 자신의 프로퍼티나 메서드를 참조하기 위한 자기 참조 변수this가 가르키는 값. 즉 th