JavaScript의 Object는 항상 Key와 value로 구성되어 있다.만약 value에 변수명을 사용할 예정이며, 그 이름이 생성하려 하는 property의 key와 이름이 같은 경우라면, Shorthand property names 표기법을 사용하여 축약한 형
자바스크립트에서는 객체나 배열을 복사할 때, 깊은 복사(Deep Copy) 와 얕은 복사(Shallow Copy) 라는 개념이 있다. \- 과연 이들의 차이는 무엇일까?깊은 복사(Deep Copy) 는 '실제 값'을 새로운 메모리 공간에 복사하는 것을 의미한다. \
소프트웨어 개발에서 라이브러리와 프레임워크는 중요한 도구이다.그러나 둘 사이에는 명확한 차이점이 있다.라이브러리는 특정 기능을 구현하기 위해 사용할 수 있는 재사용 가능한 코드의 집합이다.그러므로, 개발자는 필요할 때 라이브러리의 기능을 호출하여 사용할 수 있다.라이브
자바스크립트에서의 함수는 일급 객체이다.때문에, 함수를 값처럼 인자로 전달할 수 있으며, 반환할 수도 있다.그래서 자바스크립트에는 고차 함수라는 용어가 있다. 고차함수는 변수 뿐 아니라, 함수를 인자로 받거나 또는 함수를 출력으로 반환하는 방식으로 작동하는 함수를 의
CRP란, 웹 브라우저가 원본 HTML문서를 읽어들인 후, 스타일을 입히고 대화형 페이지로 만들어 뷰포트(Viewport)에 표시하기까지의 과정을 의미한다.파싱: 브라우저의 렌더링 엔진은 서버로부터 받은 HTML, CSS파일을 해석하는 파싱 과정을 거친다. DOM 트
예외 처리는 프로그래밍 언어가 정해놓은 규칙에서 벗어난 오류가 발생했을 때의 행동을 정의하는 것을 의미한다.예외 처리는 프로그램에서 발생할 수 있는 오류를 적절히 처리하여 프로그램이 중단되지 않고 계속 실행되도록 하는 방법이다.자바스크립트에서는 try...catch 문
두 메소드 모두, JavaScript에서 배열을 순회(iterate)하는 데 사용되는 메서드이다. \- 그러나, 용도와 동작에서 중요한 차이점이 존재한다.목적배열의 각 요소에 대해 주어진 함수를 실행한다.forEach는 요소를 변형하거나 side effect(사이드
자바스크립트에서 네이티브 객체와 호스트 객체는 자바스크립트 환경에서 객체가 어디에서 기원했는지에 따라 구분되는 두 가지 객체 유형이다. 네이티브 객체는 자바스크립트 언어 자체에서 제공하는 객체들이다.ECMAScript 사양에 정의되어 있으며, 특정 환경이나 플랫폼과 상
string, number, boolean, undefined, symbol원시 자료형은 할당할 때, 식별자(변수)에 값 자체가 담긴다.좀 더 정확히 말하면 할당한 값은 메모리 주소에 할당되고, 식별자(변수)는 이 값을 가리킨다.값의 변경이 일어나면, 기존 메모리 주소
정의:이벤트 버블링은 특정 요소에서 발생한 이벤트가 그 요소의 부모 요소로 전달되고, 그 부모 요소의 부모로 계속 전달되는 과정을 말한다.마치 물방울이 아래에서 위로 올라가는 것처럼, 이벤트가 가장 깊은 요소에서 시작해 위로 전파된다.예시:만약 버튼을 클릭했다면, 그
자바스크립트에서는 함수 정의 방법은 일반 함수와 화살표 함수의 두 가지 주요 스타일이 있다. \- 일반 함수와 화살표 함수는 무엇이고, 이 둘의 차이는 무엇인지 알아보도록 하자. 일반 함수는 function 키워드를 사용하여, 함수를 정의하는 방법이다. 특징은 아래와
반응형 웹(Responsive Web)과 적응형 웹(Adaptive Web)은 화면 크기나 기기에 따라 웹 페이지가 사용자에게 최적화된 화면을 제공하는 방법이다. 하지만 이 두 접근 방식은 화면을 최적화하는 방식에서 차이가 있다. 반응형 웹은 CSS의 미디어 쿼리(me
인라인 함수인라인 함수는 일반적으로 해당 함수를 호출하는 곳에 직접 선언된다.주로 콜백 함수나 짧은 동작을 수행하는 함수 등 간단한 작업에 사용된다.아래 코드의 function(number) { return number \* 2; }는 map 메서드 안에서 인라인으로
OverviewNode.js 프로젝트에서는 패키지를 설치할 때, 해당 패키지가 프로젝트에서 어떻게 사용되는지에 따라 dependencies 또는 devDependencies 로 구분하여 관리한다.이 두 가지는 package.json 파일의 중요한 필드이며, 설치한 패키
제너레이터(Generator) 는 함수 실행을 일시 중지하고 다시 시작할 수 있는 특별한 함수이다.일반 함수와 달리, 제너레이터는 function\* 키워드로 정의되며, 호출 시 즉시 실행되지 않고 이터레이터(Iterator) 객체를 반환한다.이를 통해 값을 순차적으로
자바스크립트의 실행 컨텍스트는 코드가 실행되는 환경을 정의하는 기본 개념이다.일단 추상적으로만 말해보면, 자바스크립트가 코드를 실행할 때 필요한 모든 정보를 담고 있는 박스라고 생각하면 된다.자바스크립트의 동적 언어로서의 성격을 가장 잘 파악할 수 있는 개념이다.실행
코드 스플리팅(Code Splitting)은 웹 애플리케이션에서 코드를 작은 청크(chunk)로 분리하여 애플리케이션의 초기 로딩 속도를 개선하는 기술이다. 이 기술은 번들 파일을 여러 개로 나누고, 사용자가 필요로 하는 부분만 로드함으로써 네트워크 비용과 사용자 대기
자료구조로서의 배열은 데이터를 일정한 순서와 구조를 갖춘 집합으로 저장하는 방법을 의미한다.배열은 프로그래밍에서 기본적인 자료구조 중 하나로, 메모리 내에서 연속적인 공간에 요소를 저장한다.배열의 핵심적인 특성과 개념은 다음과 같다.정적 배열대부분의 배열은 메모리에서