Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- MySQL
- 자바 while문
- 프로그래머스
- 자바 공배수
- 자바 for문
- 자바 조건문
- react ag grid
- 자바 public
- react with typescript
- 변수
- 자바 switch문
- 정보처리기사실기
- 자바 스캐너
- Vue3
- 자바 구구단 출력
- 타입스크립트
- TypeScript
- 항해99 2기
- 자바 향상된 for문
- 자바 삼항연산자
- 자바 자동캐스팅
- 자바
- 이클립스 DB연동
- 조코딩
- Til
- 항해99
- 자바 if문
- 자바 강제 캐스팅
- 자바 반복문
- java
Archives
- Today
- Total
뇌 채우기 공간
[Java Script] 논리연산자 && and 연산자/ || or 연산자 에서 truthy와 falsy/ 본문
WEB/Java Script
[Java Script] 논리연산자 && and 연산자/ || or 연산자 에서 truthy와 falsy/
자바칩 프라푸치노 2021. 4. 23. 21:35논리연산자를 사용할때 꼭 true나 false를 사용하지 않아도 된다
truthy한 값이나 falsy한 값을 사용해도된다.
const dog ={
name : '멍멍이'
};
function getName(animal){
if(animal){
return animal.name;
}
return undefined;
}
const name = getName(dog);
console.log(name);
이렇게 코드를 작성해주었다.
getName이라는 function이 있는데 파라미터로 아무것도 적지 않으면 undefined를 리턴하겠다 이다.
const dog ={
name : '멍멍이'
};
function getName(animal){
return animal && animal.name;
}
const name = getName();
console.log(name);
그런데 똑같은 코드로는 이렇게 작성하면 된다.
그러니까 getName에 파라미터로 아무것도 안넣으면 위와 같이 undefined가 나온다는 것이다.
어떻게 같은 값이 나오는가?
console.log(true && 'hello');
console.log(false && 'hello');
console.log('hello' && 'bye');
이렇게 논리 연산자를 보면 &&연산자일때 둘다 true이거나 truthy인 값이면 뒤에 값이 나온다.
만약에 앞에 있는 값이 false이거나 falsy한 값이면 결과는 앞에 있는 값이 나온다.
이제 || 연산자를 보자 or연산자
const namelessDog ={
name:'',
};
function getName(animal){
const name = animal && animal.name;
if(!name){
return '이름이 없는 동물입니다.';
}
return name;
}
const name = getName (namelessDog);
console.log(name);
이렇게 getName이라는 함수를 설정해주었는데
이름이 없으면 이름이 없는 동물입니다가 나오고 있으면 name이 나오게 했다.
const namelessDog ={
name:'',
};
function getName(animal){
const name = animal && animal.name;
return name || '이름이 없는 동물입니다';
}
const name = getName (namelessDog);
console.log(name);
간단하게 해보자면
name || '이름이 없는 동물입니다' 라고 적으면 된다.
이것이 어떻게 나오는가
console.log(false || 'hello');
console.log('나다' || false);
위의 &&연산자 처럼 이것도 falsy인 값과 truthy한 값이 있으면
여기서는 truthy한 값이 무조건 나온다.
728x90
'WEB > Java Script' 카테고리의 다른 글
[Java Script ]조건문 더 스마트하게 쓰기 / 배열의 내장함수 includes/ 객체를 활용한 조건문 / 조건마다 다른 함수를 실행해야 할때 (0) | 2021.04.24 |
---|---|
[Java Script] 비구조화 할당(구조분해) 너무 어렵다!!! (0) | 2021.04.24 |
[Java Script] Truthy and Falsy/ 확인하는 방법 (0) | 2021.04.23 |
[Java Script] 삼항 연산자, 삼항 연산자의 중첩 (0) | 2021.04.23 |
[Java Script] 클래스와 상속 (0) | 2021.04.23 |