Home
디피의 개발일지
Cancel

State of frontend 2024

https://tsh.io/state-of-frontend/#data Chapter 3. Teams & Technology 02. Frameworks svelte 는 순풍중인거 같고 vue.js 는 생각보다 잘나가는듯 프레임워크는 Astro, Nuxt, Sveltekit, Remix 가 배울만 한거 같고, astro 가 생각보다 ...

You don't know JS Yet 2부 - 7장 클로저 사용법

클로저는 최소 노출의 원칙 (POLE)을 기반으로 한다. 변수를 오랫동안 유지해야하는 경우 클로저를 사용하면 변수를 외부 스코프에 두는 대신 더 제한된 스코프로 캡슐화 할 수 있다. 함수 내부에서 함수 밖 해당 변수에 계속 접근할 수 있어 변수를 더 넓은 범위에서 사용할 수 있는 이점이 있다. 7.1 클로저 관찰하기 클로저는 함수에서만 일어...

빌드 시스템 없이 프런트엔드 자바스크립트 라이브러리 불러오기

번역, 원문 세가지 종류의 자바스크립트 파일 라이브러리가 제공할 수 있는 3가지 기본 자바스크립트 파일 클래식 유형. <script src>로 추가해 바로 사용할 수 있음 ES 모듈 (다른 파일에 의존할 수 있음) CommonJS. 빌드 시스템 없이는 브라우저에서 사용할 수 없음 이때 라이브러리들은 빌드를 생성해 보통 n...

You don't know JS Yet 2부 - 6장 스코프 노출 제한

어떻게, 왜 함수와 블록을 사용해 프로그램 내 변수를 다양한 스코프로 구성해야하는지 6.1 최소 노출의 원칙 (POLE) 정보보안분야의 최소 권한의 원칙(POLP)처럼, 변수를 최소한의 블록에만 노출해야한다는 최소 노출의 원칙(POLE)을 적용할 수 있다. 만약 모든 변수를 전역 스코프에 등록하게 되면 아래와 같은 문제가 발생한다. 이름 충...

You don't know JS Yet 2부 - 5장 변수의 비밀 생명주기

변수 선언 위치에 따른 작동 방식의 차이와 사용 여부 5.1 변수 사용 가능 시점 모든 식별자는 컴파일 타임 때 각자의 스코프에 등록된다. 또 모든 식별자는 자신이 속한 스코프가 생성될 때 해당 스코프의 시작 부분에서 생성된다. 이렇게 선언은 스코프 아래에 있더라도 스코프 시작부분에서 변수의 가시성이 확보되는 걸 호이스팅이라고 한다. 하지만 가...

You don't know JS Yet 2부 - 4장 전역 스코프

JS 프로그램에서 전역스코프는 우리 생각보다 많은 유용한 기능을 제공하며, 여타 스코프와는 다른 미묘한 차이가 있다. 이번 장에서는 전역스코프가 어떻게 유용한지, JS 호스트 환경에서 전역 스코프는 어디에 있고 어떻게 접근하는지 알아보자 4.1 전역 스코프를 배워야하는 이유 JS 엔진은 분리된 여러 개의 파일을 실행 시점에 하나로 연결시킨다. 이...

You don't know JS Yet 2부 - 3장 스코프 체인

스코프 체인 : 스코프와 중첩 스코프 사이에 맺어진 연결. 변수 접근 시 사용할 경로가 스코프 체인을 통해 결정된다. 이때 체인은 변수 탐색 경로가 위 혹은 바깥으로만 향하도록 지시 받는다. 3.1 탐색의 진실 우리는 어떤 변수가 어느 스코프에 있는지 상위스코프로 탐색해나간다고 생각하지만, 실제 동작방식은 다르다. 실제로는 컴파일 초기에 이미 어떤...

You don't know JS Yet 2부 - 2장 렉시컬 스코프

컴파일 중 JS 엔진은 스코프의 지도를 완성한다. 이를 렉시컬 스코프라고하며 이때 렉시컬은 컴파일의 첫번째 단계인 렉싱을 의미한다. 이번 장에서는 스코프를 더 잘 이해하고, 이를 위해 JS 엔진이 프로그램을 처리하는 방법을 살펴보자 2.1 구슬과 양동이 변수가 어느 스코프에 들어가는지를 구슬이 어느 양동이에 들어가는지로 비유해서 설명함 스코...

You don't know JS Yet 2부 - 1장 스코프

JS에서 함수는 일급값이기에 변수에 할당할 수 있고, 다른 곳에 넘길수도 있다. 그런데 다른 곳으로 넘어간 함수 내에서 외부 변수를 사용하는 경우, 해당 변수는 어딘가에 접근해야하므로 JS 에서는 함수를 프로그램 내 어디에서 실행하든 상관없이 함수 정의시 결정된 스코프를 유지한다. 이를 클로저라고 한다 1.2 컴파일 vs 인터프리트 컴파일 : 텍스...

Blob vs File 차이점 이해하기

https://jsdev.space/file-blob-js/ Blob Blob는 raw binary data (file, images, videos, non-text data 등)를 다루기 위해 주로 사용되는 자바스크립트 불변 객체이다 특징 불변성 : 한번 만들면 수정이 불가능하다. 다른 데이터와 합쳐서 새로운 Blob를 만드는 것은 가능하...