this를 포함한 property를 구조분해할당하면this가 가리키는 객체가 다를 것이라는 것은 머릿 속으로는 알고 있었는데,정리해보려고 남겨보는 글이다.this를 포함한 구조 분해 할당의 문제와 해결 방법구조 분해 할당은 객체나 배열에서 원하는 속성 또는 값을 추출해 별도의 변수로 할당하는 방식이다.코드의 간결성과 가독성을 높이는데 자주 사용된다.예시: 단순 속성 구조 분해this를 사용하지 않는 경우, 구조 분해 할당은 아무 문제 없이 동작한다.함수형 예제const obj = { a: 1, b: 2, c: 3 };const { a, b } = obj;console.log(a, b); // 출력: 1, 2클래스 예제 (this 제외)class MyClass { constructor() { thi..
매년 Ecma International에서는 JavaScript의 표준인 ECMAScript(줄여서 ES)를 개정하여 발표한다.2024년 7월에 발표된 ES2024는 JavaScript에 새로운 기능을 추가하고 기존 기능을 더욱 강화하여 개발자들의 작업을 보다 효율적으로 만들어 주는 다양한 개선 사항을 포함하고 있는데,이번 글에서 다뤄보고자 한다.[JS] ES2024에는 어떤 기능이 추가되었을까?1. Object.groupBy 및 Map.groupByES2024 이전의 불편함: 배열을 특정 기준으로 그룹화할 때, 개발자는 reduce()나 forEach()를 사용해 수동으로 데이터를 그룹화해야 했다. 이 방식은 코드가 길어지고 가독성이 떨어지며, 실수를 유발할 가능성도 있다.이전 코드 (ES2024 이전..
RORO 패턴이란?RORO는 "Receive an Object, Return an Object"의 약자로, 함수의 매개변수와 반환값을 모두 객체로 사용하는 JavaScript 패턴이다.이 패턴은 TypeScript와 함께 사용할 때 특히 유용하다고 한다. RORO 패턴의 주요 이점은 다음과 같다:매개변수의 순서에 구애받지 않음선택적 매개변수를 쉽게 처리함수 시그니처의 변경이 용이코드의 가독성과 유지보수성 향상TypeScript와 함께 사용 시 타입 안정성 강화RORO 패턴 예시예시1기존의 함수:function createUser(name: string, age: number, email: string, isAdmin: boolean = false) { // 사용자 생성 로직}createUser("Joh..
JavaScript 코딩테스트를 준비해 본 사람이라면, Node.js에서 사용자 입력을 받아 처리하는 대표적인 방법인 fs 모듈과 readLine 모듈을 사용해봤을 것이다.입력 값을 받아 출력 값을 보여주기 위해 사용하는 모듈이라는 사실만 알지, 구체적으로 어떻게 사용하는 것인지 몰랐기에,이번에 정리해보려한다.1. fs 모듈fs 모듈은 파일 시스템과 상호작용할 수 있는 모듈로, 파일을 읽거나 쓸 때 사용됩니다. 주로 파일에서 입력을 읽을 때 사용한다.사용법모듈을 불러온다. // require('fs')readFileSync 메서드를 사용하여 파일을 동기적으로 읽는다. // fs.readFileSync('data.json', 'utf8')입력을 처리한다. // JSON.parse(data) : JSON 문..