const array = [];
// if ~ else 구문 사용
let text = '';
if (array.length === 0) {
text = '배열이 비어있습니다.';
} else {
text = '배열이 비어있지 않습니다.';
}
// 삼항 연산자 사용
let text = array.length === 0 ? '배열이 비어있습니다' : '배열이 비어있지 않습니다.';
console.log(text);
function print(person) {
if (!person) { // undefined와 null은 Falsy한 값이기 때문에 ! 붙여 true로 전환됨
console.log('person이 없네요');
return;
}
console.log(person.name);
}
const person = null;
print(person);
const num = parseInt('15', 10); // 10진수 15를 숫자로 변환하겠다는 의미
console.log(num); // 10
const notnum = parseInt('야호~', 10);
console.log(notnum); // NaN
const cat = {
name: '삼색이'
};
// if 문을 사용하여 에러 처리
function getName(animal) {
if (animal) {
return animal.name;
}
return undefined;
}
// 논리 연산자 사용
function getName(animal) {
return animal && animal.name;
}
const name = getName(); // 파라미터를 넣지 않음
console.log(name); // undefined
const names = getName(cat); // 파라미터를 넣음
console.log(names); // 삼색이
const namelessDog = {
name: ''
};
// if 문 사용
function getName(animal) {
const name = animal && animal.name;
if (!name) {
return '이름이 없는 동물입니다';
}
return name;
}
// || 연산자 사용
function getName(animal) {
const name = animal && animal.name;
return name || '이름이 없는 동물';
}
const name = getName(namelessDog);
console.log(name); // 이름이 없는 동물
function calculateCircleArea(r) {
return Math.PI * r * r;
}
const area = calculateCircleArea(4);
console.log(area); // 50.26548245743669
const area = calculateCircleArea();
console.log(area); // NaN error
function calculateCircleArea(r) {
const radius = r || 1;
return Math.PI * radius * radius;
}
const area = calculateCircleArea();
console.log(area); // 3.141592653589793
// function 함수
function calculateCircleArea(r = 1) {
return Math.PI * r * r;
}
// 화살표 함수
const calculateCircleArea = (r = 1) => Math.PI * r * r;
const area = calculateCircleArea();
console.log(area); // 3.141592653589793
Reference
벨로퍼트와 함께하는 모던 자바스크립트