728x90
반응형
SMALL

1. 옵셔널 체이닝

- ECMA Script 11버전에 추가

- null 또는 undefined를 확인할때 쓰이는 연산자

- ?. , ??

 

2. 예제 및 설명

2-1

or 연산에서는 a,b 둘중 하나이상이 true이면 true값을 리턴하기 때문에 console부분이 출력된 모습.

 

2-2

and 연산에서는 둘다 true여야 true 값을 리턴하기 때문에 obj2까지 true값을 반환하여 마지막것에 있는 obj2가 result에 저장됨

 

2-3

or 연산에서는 둘중 하나만 true면 되기 때문에 true인 obj1만 연산후 obj2는 무시, 그후 obj1을 result에 저장

 

2-4

changelover 함수는 obj(파라미터)를 받아서 if문을 돌린다.

if문 => obj.lover(파라미터로 받은 값에 lover라는 키가 있냐) 에 ! 를 붙여 반대로 없으면 if문을 실행하게 됨

없다면 error 발생

있다면 obj.lover에 '애인이 바뀜' 을 새로 저장

 

makeNewlover 함수는 obj(파라미터) 를 받아서 lover가 있으면 에러를 발생해서 '애인이 있어'를 알림

없다면 obj.lover에 애인이 생김을 저장한다.

obj1의 lover값이 있으면 함수를 실행 없으면 실행 안한다.

마찬가지로 obj2에 lover가 있으면 실행함. 

있어서 이메론이었던 값이 변한 모습. 

 

2-5

아이템이라는 변수를 선언하고 딕셔너리를 저장

가격이라는 변수를 상수로 선언해서 item 변수에 price가 있다면 그 값을 저장하게 됨.

 

2-6

print() 함수는 text 변수에 message라는 파라미터가 없다면 'hello'문자열을 저장하게 된다.

문자열을 입력해준 '안녕' 말고는 다 기본값으로 설정해둔 hello가 출력된 모습.

 

2-7

0 은 false이기 때문에 -1이 저장된 모습

 

2-8

?? 연산자의 경우 0 도 객체로 인식되어서 0이 저장된다.

728x90
반응형
LIST

'JavaScript' 카테고리의 다른 글

JavaScript - JSON  (0) 2023.04.13
JavaScript - async / await  (0) 2023.04.13
JavaScript - Promise(프로미스)  (0) 2023.04.12
JavaScript - 예외 처리  (0) 2023.04.12
JavaScript - 주석  (0) 2023.04.12

+ Recent posts