이끌든지 따르든지 비키든지

Software Development/JavaScript 4

[JavaScript] 모듈 (import / export)

모듈이란? 코드의 일부를 논리적으로 분리하고 구조화할 때, 각각 분리된 단위를 모듈(Module)이라 한다. 모듈화가 필요한 이유 코드의 재사용 : 비슷한 기능이나 관련된 기능들을 모듈로 분리하여 필요한 곳에서 재사용할 수 있다. 코드의 구조화 : 프로그램을 여러 개의 독립적인 모듈로 나누어 각 모듈이 특정 역할을 담당하도록 분리함으로써 코드의 구조를 개선하고 유지보수를 용이하게 한다. 네임스페이스 관리 : 모듈을 사용함으로써 전역 네임스페이스 충돌을 방지하고 각 모듈에서 정의한 변수, 함수, 객체 등을 별도의 네임스페이스로 유지할 수 있다. 코드의 숨김 : 필요한 기능을 외부에 노출시키지 않고 private하게 유지하여 정보 은닉과 캡슐화를 구현할 수 있다. 모듈 export 모듈을 내보내는 방법은 e..

[JavaScript] 자바스크립트의 비동기 처리

비동기(Asynchronous) 처리 자바스크립트는 단일 스레드 기반의 언어로, 한 번에 하나의 작업만 처리할 수 있다. 그러나 비동기 처리 방식을 사용해 코드를 순차적으로 실행하되, 실행 결과를 기다리지 않고 다음 코드를 실행한다. 그래서, 우리가 보기에 여러 작업이 동시에 실행되는 것처럼 보인다. 비동기 처리는 코드를 순차적으로 실행하지만, 실행 결과를 기다리지 않고 다음 코드를 실행한다. 이 때문에, 작업이 실행 중일 때 다른 작업을 수행할 수 있으며, 사용자의 요청에 빠르게 응답할 수 있다. 자바스크립트의 비동기 처리를 확인할 수 있는 간단한 예시를 보자면, console.log("Hello"); setTimeout(function() { // 1초 뒤에 실행 console.log("Dev"); ..

[JavaScript] const의 불변성

자바스크립트에서 const는 상수, 즉 불변형 변수를 선언할 때 사용한다. 자바의 final과 같은 역할을 하는 키워드인 셈인데, const로 선언된 객체를 Java에서 final로 선언된 객체와 같이 Read-Only라고 생각할 수 있지만, const로 선언된 객체의 속성은 변경할 수 있다. 그럼 Read-Only가 아니라는 건가? 예시 코드를 통해 알아보자면, const person = { name: 'John', age: 30 }; person.age = 31; console.log(person); // 출력: { name: 'John', age: 31 } 위 코드처럼, person의 속성인 age는 변경이 가능하다. const person = { name: 'John', age: 30 }; per..

[JavaScript] 자바스크립트의 이해

JavaScript는 초창기에는 웹 페이지 내에서 동적 표현을 담당했지만, 최근 Node.js라는 자바스크립트 런타임이 등장하며, 프론트엔드는 물론 백엔드 영역까지 아우르는 웹 프로그래밍 언어의 표준으로 자리를 잡고 있다. 자바스크립트의 특징 1. 동적 & 약타입 언어 자바스크립트는 실행 시 데이터 타입을 결정하는 동적 언어이면서, 다른 데이터 타입간에 형 변환이 상대적으로 자유로운 약 타입 언어이다. 문법도 타 언어에 비해 비교적 간단하고, 유연하게 코드를 작성할 수 있어 코드 작성 효율이 높다. // 정적 & 강 타입 언어인 Java int num1 = 10; String str = "Hello"; int result = num1 + str; // 결과 : 컴파일 에러 // 동적 & 약 타입 언어인 ..