개발 R.I.P.

Javascript #1 연산자

편행 2021. 4. 13. 21:33
반응형

연산자에는 다양한 연산자가 있다. 

https://developer.mozilla.org/ko/docs/Web/JavaScript/Guide/Expressions_and_Operators 참조

 

이 다양한 연산자 중 내가 아직 개념이 확실하지 않은 부분들에 대해서 정리를 해보려고 한다.

먼저 할당 연산자.

할당 연산자는 오른쪽의 값을 왼쪽 값에 할당하는 (=) 등호이다. 

이 연산자에 대해 설명을 들을 때, 수학에서의 등호와 동일하게 생각하면 안된다고 하는 부분이 있었다.

머릿속에서 " 아 그렇구나 " 라고 생각만 하고 쉬운 개념이거니 하며 넘어갔다.

하지만, 코드를 직접 작성해보니 그 생각은 매우 안일했던 것임을 깨닫게 되었다.

 

할당 연산자는 오른쪽의 값왼쪽 값에 할당하는 (=) 등호이다. 

수학에서의 등호는 오른쪽이든 왼쪽이든 그 방향성에 대해서는 크게 중요하지 않았다.

 

'2'+'3' = '5'

'5' = '2'+'3'

 

위 예시에서 볼 수 있듯, 컴퓨터가 아닌 실제 생활에서 계산을 해보았을 때, 이 수식은

결국 같은 값이기에 문제가 없는 것이다.

하지만 코드 작성시 이런 생각은 매우 큰 문제를 유발하기도 한다는 것을 오늘 깨닫게 되었다.

위의 수식을 코드로 작성한다면,

 

먼저

'2' + '3' = '5'

컴퓨터는 문자열 2와 3을 더한 값에 문자열 5를 할당한다고 인식한다.

문자열 '2' 와 '3'을 더하면 문자열 '23'이 되는 것이 아닌 5가 되는 것이다.

 

그리고

'5' = '2' + '3'

컴퓨터는 문자열 5에 문자열 '2' 와 '3'을 더한 값을 할당한다고 인식한다.

문자열 '5'을 문자열 '23'으로 인식하게 된다는 것

 

물론 예시가 약간 억지스럽긴 하지만, 내가 평소에 수학에서 배웠던 그 등호와 동일한 메커니즘으로 생각하면

결코 안된다라는 것을 깨닫게 된 하루였다.

정확히 보기 위해 항상 면밀하게 살피는 시간을 가져야 할 것 같다.

 

 

반응형

'개발 R.I.P.' 카테고리의 다른 글

Github로 협업하는 방법  (0) 2021.04.22
배열과 객체#2  (0) 2021.04.21
배열과 객체 #1  (0) 2021.04.19
Linux기초 과정  (2) 2021.04.14
CSS :nth-child  (3) 2021.04.12