2017년 08월 부터 시작한 나의 커리어와 더불어 평소에 관심있었으나 실행하지 못했던 것들에 대한 기록을 통해 더 나은 글쓰기 실력과 하루에도 스쳐가는 수 많은 아이디어를 붙잡아보고자 한다. (+ 쓸데없는 생각 포함)
banana의 ba까지는 이해가 된다. 마지막의 a까지도 이해가 된다.
그렇다면 중간의 nan은 어디서 왔는가?
이를 위해 이해되는 부분을 하나씩 걷어내보았다
'anana'
'nana'
저 뒤의 toLowerCase() 때문에 가려져 있던 진실을 마주해보도록 했다.
'aNaNa'
'NaNa'
NaN
출력(isNaN((+ + 'n')) === true)NaN
('b' + 'a' + + 'n' + 'a').toLowerCase() 에서, + 'n'
은 숫자형 변수처럼 let a = -1 이나 let b = +3과 같이 양수/음수로 표현하는 연산자로 적용되나, string에 해당 연산자가 적용될 경우 숫자가 아니므로 NaN이 출력된것.
+ 'n'
이 아니라 전체가 숫자로 된 string을 제외한 어떤 string 값이 들어와도 결과는 'banana'
로 동일하다(풉)