Web Development/JavaScript(22)
-
최신 JavaScript 문법
최신 JavaScript 문법템플릿 리터럴템플릿 리터럴은 백틱(`)을 사용하여 문자열을 더 쉽게 작성할 수 있는 기능입니다.1. 여러 줄 문자열// 기존 방식let message = '안녕하세요.\n' + '반갑습니다.';// 템플릿 리터럴 사용let message = `안녕하세요.반갑습니다.`;2. 표현식 삽입const name = '철수';const age = 25;// 기존 방식let greeting = '안녕하세요, ' + name + '님! 나이가 ' + age + '살이시군요.';// 템플릿 리터럴 사용let greeting = `안녕하세요, ${name}님! 나이가 ${age}살이시군요.`;3. 태그드 템플릿function highlight(strings, ...val..
2025.03.30 -
모듈 시스템
모듈 시스템ES6 모듈 개념모듈은 JavaScript 코드를 재사용 가능한 독립적인 파일로 분리하는 방법입니다. 복잡한 애플리케이션을 더 작고 관리하기 쉬운 조각으로 나누어 개발할 수 있게 해줍니다.모듈의 장점:코드 재사용성 향상이름 충돌 방지 (각 모듈은 자체 스코프를 가짐)코드 구조화 및 유지보수 용이의존성 관리 개선import와 exportES6에서는 import와 export 키워드를 사용해 모듈 간에 기능을 공유할 수 있습니다.export모듈에서 다른 파일로 내보내고 싶은 변수, 함수, 클래스 등을 지정합니다.방법 1: 개별 내보내기// math.jsexport const PI = 3.14159;export function add(a, b) { return a + b;}export functi..
2025.03.30 -
실전 비동기 프로그래밍 패턴
실전 비동기 프로그래밍 패턴타임아웃 처리Promise가 지정된 시간 내에 완료되지 않으면 거부되도록 타임아웃을 설정할 수 있습니다.function fetchWithTimeout(url, options = {}, timeout = 5000) { return new Promise((resolve, reject) => { // 주 Promise const fetchPromise = fetch(url, options) .then(resolve) .catch(reject); // 타임아웃 Promise const timeoutPromise = new Promise((_, reject) => { setTimeout(() => { reject(ne..
2025.03.30 -
async/await
async/awaitES2017에서 도입된 async/await는 Promise를 기반으로 하지만, 더 간결하고 동기식 코드와 유사한 방식으로 비동기 코드를 작성할 수 있게 해줍니다.async/await 기본 문법// async 함수 선언async function fetchUserData() { try { // await는 Promise가 이행될 때까지 기다림 const response = await fetch('https://api.example.com/users'); if (!response.ok) { throw new Error(`HTTP 오류! 상태: ${response.status}`); } const userData = await respon..
2025.03.30 -
Promise
PromiseES6에서 도입된 Promise는 비동기 작업의 최종 완료(또는 실패) 및 결과 값을 나타내는 객체입니다. 콜백 지옥 문제를 해결하고 더 나은 오류 처리를 제공합니다.Promise 기본 개념Promise는 다음 중 하나의 상태를 가집니다:대기(pending): 초기 상태, 이행되거나 거부되지 않음이행(fulfilled): 작업이 성공적으로 완료됨거부(rejected): 작업이 실패함// Promise 생성const myPromise = new Promise((resolve, reject) => { // 비동기 작업 수행 const success = true; if (success) { resolve("작업 성공!"); // 이행 상태로 전환 } else { reject(..
2025.03.30 -
콜백 함수
콜백 함수의 이해와 한계콜백 함수 기본콜백 함수는 다른 함수의 인자로 전달되어 나중에 실행되는 함수입니다. JavaScript에서 비동기 처리를 위한 전통적인 방법입니다.// 기본 콜백 예제function greeting(name, callback) { console.log(`안녕하세요, ${name}님!`); callback();}greeting("홍길동", function() { console.log("콜백 함수가 실행되었습니다.");});// 비동기 콜백 예제setTimeout(function() { console.log("3초 후에 실행됩니다.");}, 3000);// DOM 이벤트 콜백document.getElementById("myButton").addEventListener("clic..
2025.03.30