본문 바로가기

프로그래밍/자바스크립트5

[JavaScript] 배열 메서드 - map, filter, reduce 자바스크립트에서 데이터를 다룰 때 배열은 빠질 수 없는 개념이다. 특히 map, filter, reduce 같은 고차 함수들은 반복문 없이 깔끔한 코드 작성을 가능하게 만든다. 코드 가독성이 좋아지고, 불필요한 변수를 줄여 사이드 이펙트를 최소화할 수 있다는 점에서 유용하다. 하지만 처음에는 각 메서드의 차이와 용도를 정확히 이해하지 못해서 불필요하게 반복문을 섞어 쓰는 경우도 많다. 여기서는 배열을 다룰 때 자주 쓰이는 메서드들을 정리하고, 실제 코드에서 어떻게 활용하면 좋을지 살펴본다.1. map - 배열 변형의 기본map은 기존 배열을 가공하여 새로운 배열을 만들 때 유용하다. 기존 데이터를 변경하는 것이 아니라 변형된 새로운 배열을 반환한다는 점이 핵심이다.const numbers = [1, 2,.. 2025. 2. 11.
[JavaScript] Callback, Promise, async/await 자바스크립트는 기본적으로 단일 스레드로 동작하는 언어다. 이 말은 한 번에 하나의 작업만 처리할 수 있다는 뜻이다. 하지만 현대 웹 애플리케이션은 네트워크 요청, 파일 읽기/쓰기, 타이머 등 비동기 작업이 필수적이다. 이런 작업들을 효율적으로 처리하기 위해 자바스크립트는 다양한 비동기 처리 방식을 제공한다. 대표적으로 콜백(callback), 프로미스(Promise), 그리고 async/await가 있다. 각각의 방식은 등장한 배경과 철학이 다르고, 적재적소에 활용해야 한다.개발자로서 이 세 가지를 제대로 이해하고 사용하는 것은 필수다. 특히 협업 환경에서는 코드의 가독성과 유지보수성이 중요하기 때문에 비동기 처리를 다루는 방식에 따라 생산성에 큰 차이가 생긴다. 이 글에서는 각 방식의 특징과 장단점을 .. 2025. 2. 10.
[JavaScript] ES6 이후의 주요 문법 변화 (2) 1. 클래스(Class)ES6에서 도입된 클래스는 객체지향 프로그래밍(OOP)을 지원하기 위해 추가된 문법이다. 기존의 프로토타입 기반 객체 생성 방식보다 직관적이고 선언적인 코드를 작성할 수 있다.class Person { constructor(name, age) { this.name = name; this.age = age; } greet() { console.log(`안녕하세요, 저는 ${this.name}이고, 나이는 ${this.age}살입니다.`); }}const person = new Person("홍길동", 30);person.greet(); // 안녕하세요, 저는 홍길동이고, 나이는 30살입니다. 개인적으로 클래스 문법이 도입되면서 객체 생성과 상속 구현이 훨씬 쉬.. 2025. 2. 10.
[JavaScript] ES6 이후의 주요 문법 변화 (1) JavaScript는 웹 개발의 중심에 있는 언어다. 1995년 처음 등장한 이후로 꾸준히 발전해왔고, 특히 ES6(ECMAScript 2015)부터는 언어의 패러다임을 바꿀 정도로 큰 변화가 있었다. 이후에도 매년 새로운 기능과 문법이 추가되며 개발자들에게 더 나은 생산성과 가독성을 제공하고 있다. ES6 이후의 주요 문법 변화들을 살펴보면서, 이 변화들이 실제 개발 과정에서 어떤 영향을 미쳤는지 이야기해 보겠다.1. let과 const: 변수 선언 방식의 변화ES6 이전에는 변수를 선언할 때 var만 사용할 수 있었다. 하지만 var는 호이스팅(hoisting)과 블록 스코프(block scope) 미지원 문제로 인해 코드의 예측 가능성을 떨어뜨렸다. 이를 해결하기 위해 ES6에서는 let과 cons.. 2025. 2. 8.
자바스크립트의 역사와 발전 과정 1. 자바스크립트의 탄생 배경1995년, 넷스케이프(Netscape)사의 브렌던 아이크(Brendan Eich)는 웹 페이지에 동적인 기능을 추가하기 위한 언어를 개발했다.당시 웹은 HTML과 CSS로 구성된 정적인 콘텐츠만 제공할 수 있었고, 이를 보완하기 위해 새로운 스크립팅 언어가 필요했다.이 언어는 처음에는 "모카(Mocha)"로 불렸고, 이후 "라이브스크립트(LiveScript)"로 이름이 변경되었다가, 당시 Java의 인기를 활용하기 위해 "자바스크립트(JavaScript)"로 최종 명명되었다.자바스크립트는 넷스케이프 네비게이터(Netscape Navigator) 브라우저에 포함되어 출시되었으며, 곧 마이크로소프트(Microsoft)가 이에 대응하여 JScript라는 유사 언어를 개발해 인터넷.. 2025. 2. 8.