if 문 사용하는 대신, 논리연산자 (||) 사용 가능
function showMessage(text) {
if (text === undefined) { // 매개변수가 생략되었다면
text = '빈 문자열';
}
alert(text);
}
showMessage(); // 빈 문자열
// 매개변수가 생략되었거나 빈 문자열("")이 넘어오면 변수에 '빈 문자열'이 할당.
ex.
function showMessage(text) {
text = text || '빈 문자열';
}
nullish 병합 연산자 (??)
a ?? b
= a가 null도 아니고 undefined도 아니면 a
그 외의 경우는 b
|| 와의 차이
|| : 첫번째 truthy 값 반환
?? : 첫번째 정의된 값 반환
height = height ?? 100;
height에 값이 정의되지 않은경우 height엔 100이 할당됩니다.
let height = 0;
alert(height || 100); // 100
alert(height ?? 100); // 0
|| : 0을 falsy 한 값으로 처리해서 결과 : 100
?? : null, undefined 둘 다 아니기때문에 결과:0
함수 이름 짓기
"show"로 시작 : 무언가를 보여주는 함수
"get…" – 값을 반환
"calc…" – 무언가를 계산
"create…" – 무언가를 생성
"check…" – 무언가를 확인하고 불린값을 반환
안 좋은 예:
getAge 함수는 나이를 얻어오는 동작만 수행해야 합니다.
alert 창에 나이를 출력해 주는 동작은 이 함수에 들어가지 않는 것이 좋습니다.
createForm 함수는 form을 만들고 이를 반환하는 동작만 해야 합니다.
form을 문서에 추가하는 동작이 해당 함수에 들어가 있으면 좋지 않습니다.
checkPermission 함수는 승인 여부를 확인하고 그 결과를 반환하는 동작만 해야 합니다.
승인 여부를 보여주는 메시지를 띄우는 동작이 들어가 있으면 좋지 않습니다.
//함수 명에 관련된 기능만 하는 것이 좋음
// 함수가 길어질 경우 분리 작업
'개념,기능 정리' 카테고리의 다른 글
[js] 제어문 (조건문 / 반복문, break, continue) (0) | 2024.03.31 |
---|---|
jQuery (0) | 2024.03.07 |
[JS]연산자 / 형 반환 (0) | 2024.02.23 |
javaScript 복습 전 개념정리 (0) | 2024.02.20 |
기능 추가 제공 사이트 (disqus, tawk.to) (0) | 2024.02.20 |