위 글은 45 JavaScript Super Hacks Every Developer Should Know를 번역 겸 약간의 각색을 곁들인 글로,이 글은 5번째 중 2번째 글이다. 10. Nullish Coalescing Operator ( 널리쉬 병합 연산자)문제: || 연산자를 사용할 때, 0, "" (빈 문자열), false 등의 falsy 값들 때문에 의도하지 않은 기본값이 적용될 수 있다.예를 들어, 사용자가 나이를 0으로 설정했을 때 기본값으로 대체되어버리는 문제가 발생할 수 있다. 해결책: null이나 undefined일 때만 기본값을 제공하는 Nullish Coalescing (??)를 사용하세요. 이 연산자는 falsy 값들을 실제 값으로 취급하여 의도한 동작을 보장합니다.// PROBL..
위 글은 45 JavaScript Super Hacks Every Developer Should Know를 번역 겸 약간의 각색을 곁들인 글로,팁이 45가지나 되는 만큼 한 글에 담기보단 9개씩 5번으로 나눠서 포스팅할 예정이다.이 글은 5번째 중 1번째 글이다.1. var 대신 let과 const 사용하기문제: var는 함수 스코프를 가지고 있어서 버그와 예측 불가능한 동작을 초래할 수 있다.해결책: 블록 스코프를 가지는 let과 const를 사용하세요.// PROBLEM1: var는 함수 스코프이기 때문에 if 블록 내부에서의 재할당이 전역 score 변수에 영향을 미친다.var score = 10;if (true) { var score = 100; // 같은 변수 이름을 사용}console...
Quiz 1 다음 요구사항을 만족하도록 introduce 함수의 매개변수의 타입을 정의하세요 name 매개변수는 String 타입이며, "이정환" 이라는 기본값이 설정됩니다. tall 매개변수는 Number 타입이며, 선택적 매개변수 입니다. Answer 1 function introduce(name = "치현", tall?: number) { if (!tall) { console.log(`안녕하세요 ${name}입니다!`); } else { console.log(`안녕하세요 ${name}입니다. 키는 ${tall}입니다`); } } Quiz 2 함수 타입 표현식을 이용해 다음 요구사항을 만족하는 타입 Func를 정의하세요 2개의 매개변수 a와 b를 받습니다. 매개변수 a는 Number, b는 Strin..
Quiz 1. 타입 단언을 이용해 person 변수에 빈 객체를 할당하세요 (힌트. 초과 프로퍼티 검사 방지를 위한 타입 단언) type Person = { name: string; age: number; }; let person: Person = {};Answer let person = {} as Person; person.name = "치현"; person.age = 29;Quiz 2. 타입 단언을 이용해 함수 호출에서의 오류를 해결하세요 (힌트. const 단언) let value = 10; giveMe10(value); // error: 'number' 타입의 인수는 '10' 타입의 매개변수에 할당할 수 없다. function giveMe10(value: 10) { r..