JavaScript는 웹 페이지를 대화식(사용자와의 상호 작용)으로 만드는 데 사용되는 크로스 플랫폼, 객체 지향 스크립팅 언어입니다. 크로스 플랫폼: 여러 플랫폼(브라우저, OS)에서 사용할 수 있다는 의미입니다.스크립팅 언어: 소프트웨어를 제어 하는 컴퓨터 프로그
객체란 자바스크립트에서 원시 타입(숫자, 문자열, boolean, null, undifined, symbol)이 아닌 모든 데이터를 의미한다.복잡한 정보를 프로퍼티-(key와 value의 조합)으로 저장하는 자료형이다.객체를 생성해보고 해당 객체의 프로퍼티에 접근해보자
자바스크립트는 본래 객체를 다룰 때 생성자 함수와 프로토타입을 중심으로 관리해왔다.하지만 이는 다른 언어의 객체지향과는 다르고 생소하기 때문에 class라는 이름으로 포장하여 다른 언어의 클래스와 비슷한 문법의 형태로 만들었다.⚠️ 그러나 클래스와 생성자 함수의 동작이
자바스크립트의 함수는 C, C++과 같은 언어와 다른 매우 독특한 문법이다.자바스크립트 함수의 특징을 알아보자자바스크립트 실행환경에서 해당 코드를 실행시켜보자. 잘 작동한다.자바스크립트는 인터프리터언어라서 위쪽부터 차례대로 한 줄 씩 실행되는데 어떻게 함수 사용 명령을
자바스크립트의 배열은 일반적인 프로그래밍 언어들의 배열과 다르다. java, c++과 같은 다른 언어들의 배열은 같은 자료형의 데이터만 포함 가능하며, 데이터가 메모리 안에서 연속적으로 나란히 공간을 차지하고 있기 때문에 배열의 인덱스로 데이터에 접근 속도가 빠르다.하
이터러블 iterable을 직역하면 반복, 순회 가능이다. 이터러블 프로토콜 이터러블 프로토콜은 반복, 순회 기능을 사용하는 주체간의 통일된 규격을 의미한다. 이터러블은 이터러블 프로토콜을 준수하는 객체를 의미한다. 예를 들어 배열, 문자열, Map, Set 등과 같
자바스크립트가 처음 만들어 졌을 때에는 let, const가 존재하지 않았고, 모두 var를 사용했다. 하지만 var는 각종 문제점들을 갖고 있으므로 더 이상 사용하지 않을 것을 권장한다.var는 왜 사용하지 않는지 어떤 문제가 있는지 알아보자.선언 없이도 사용 가능하
Closure란 무엇인가? 클로저란 렉시컬 환경과 그 환경에 접근할 수 있는 함수의 조합이다. 클로저는 함수 내부에 변수, 그 변수에 접근하는 함수로 이루어진다. 상위 함수는 자신의 스코프내에 존재하는 변수들에 접근하는 함수를 반환하는 형태이다. 상위함수가 실행되고 나
JavaScript의 this는 함수 내에서 현재 객체를 참조하는 데 사용되는 특별한 키워드이다. this는 어디서 어떻게 호출하느냐에 따라 가리키는 대상이 결정된다.일반적으로 함수가 일반적으로 호출될 때 this는 전역 객체(브라우저에선 window)를 참조한다. 그
이벤트 루프는 자바스크립트 엔진이 비동기 처리를 위해 사용하는 핵심적인 개념 중 하나이다. 자바스크립티는 기본적으로 싱글 스레드로 동작하는 언어로, 한 번에 하나의 작업만 처리할 수 있다. 그러나 브라우저 환경에서는 비동기적으로 처리돼야 하는 경우가 많기 때문에, 이벤