Skip to content

Commit 01d6168

Browse files
Complete tarnslating of nullish coalescing operator
1 parent 4ce21c8 commit 01d6168

File tree

1 file changed

+6
-6
lines changed
  • 1-js/02-first-steps/12-nullish-coalescing-operator

1 file changed

+6
-6
lines changed

1-js/02-first-steps/12-nullish-coalescing-operator/article.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,28 +14,28 @@ null 병합 연산자 `??`없이 `x = a ?? b`와 동일한 동작을 하는 코
1414
x = (a !== null && a !== undefined) ? a : b;
1515
```
1616

17-
코드 길이가 길어지네요.
17+
비교 연산자와 논리 연산자만으로 null 병합 연산자와 같은 기능을 하는 코드를 작성하니 코드 길이가 길어지네요.
1818

1919
또 다른 예시를 살펴봅시다. `firstName`, `lastName`, `nickName`이란 변수에 사용자 이름이나 별명을 저장하는데, 사용자가 아무런 정보도 입력하지 않는 케이스도 허용한다고 해보겠습니다.
2020

21-
화면엔 세 변수 중, 값이 정해진 변수의 값을 출력하는데, 세 변수 모두 값이 정해지지 않았다면 "Anonymous"가 출력되도록 해보죠.
21+
화면엔 세 변수 중 실제 값이 있는 변수의 값을 출력하는데, 세 변수 모두 값이 없다면 '익명의 사용자'가 출력되도록 해보죠.
2222

2323
이럴 때 null 병합 연산자 `??`를 사용하면 값이 정해진 변수를 간편하게 찾아낼 수 있습니다.
2424

2525
```js run
2626
let firstName = null;
2727
let lastName = null;
28-
let nickName = "Supercoder";
28+
let nickName = "바이올렛";
2929

3030
// null이나 undefined가 아닌 첫 번째 피연산자
3131
*!*
32-
alert(firstName ?? lastName ?? nickName ?? "Anonymous"); // Supercoder
32+
alert(firstName ?? lastName ?? nickName ?? "익명의 사용자"); // 바이올렛
3333
*/!*
3434
```
3535
3636
## '??'와 '||'의 차이
3737
38-
null 병합 연산자는 OR 연산자 `||`와 상당히 유사해 보입니다. 실제로 위 예시에서 `??``||`로 바꿔도 그 결과는 동일하기까지 하죠. [이전 챕터](info:logical-operators#or-finds-the-first-truthy-value)에서 관련 내용을 살펴본 바 있습니다.
38+
null 병합 연산자는 OR 연산자 `||`와 상당히 유사해 보입니다. 실제로 위 예시에서 `??``||`로 바꿔도 그 결과는 동일하기까지 하죠. 관련 내용은 [이전 챕터](info:logical-operators#or-finds-the-first-truthy-value)에서 살펴본 바 있습니다.
3939
4040
그런데 두 연산자 사이에는 중요한 차이점이 있습니다.
4141
- `||`는 첫 번째 *truthy* 값을 반환합니다.
@@ -49,7 +49,7 @@ null 병합 연산자는 OR 연산자 `||`와 상당히 유사해 보입니다.
4949
height = height ?? 100;
5050
```
5151
52-
`height`에 값이 정의되지 않았다면 `height``100`이 할당됩니다.
52+
`height`에 값이 정의되지 않은경우 `height``100`이 할당됩니다.
5353
5454
이제 `??``||`을 비교해봅시다.
5555

0 commit comments

Comments
 (0)