판봉 개발 일기

javascript의 변수, 자료형, 형변환, 연산 본문

JAVA 웹개발 과정

javascript의 변수, 자료형, 형변환, 연산

판봉 2021. 8. 2. 18:08
728x90

오늘은 11번째 시간으로 제목과 같이 [변수, 자료형, 형변환, 연산]에 대해서 공부했습니다.

먼저 변수란 variable, 데이터를 저장할 메모리 공간에 이름을 붙인 것으로 붙인 이름으로 무언가를 하는 것을 뜻합니다.

데이터를 저장하거나 꺼내오기, 삭제, 수정 을 합니다.

 

javascript에서는 let 변수명 = 값; 으로 변수를 선언하고 값을 정할수있습니다.

선언과 할당
java처럼 변수에 변수넣기도 가능

참고로 변수명1, 변수명2, 변수명3 이런식으로는 하지 않는 것을 추천합니다.

만약에 그렇게 하는 가지수가 많아진다면 유지보수하기가 굉장히 힘들어집니다.

 

참고로 변수의 이름을 정하는것은 자바와 같다고 보시면 됩니다.

 

javascirpt에서는 java와 다르게 int형 double형이 아닌 정수와 실수가

number 형이라는 것으로 표현됩니다.

F12를 눌러서 개발자 툴에서 확인해보면 숫자는 파란색으로 표시가 됩니다.(boolean도 파란색입니다.)

물론 NaN도 파란색으로 뜨긴합니다(NanN = 숫자가 아닌 것!을 말합니다.) 에러는 뜨지 않긴합니다.

console.log(typeof) 명령어로 타입을 확인할수있음
위 코드의 개발자 툴 화면
0으로 나누면 infinity와 문자열과 더하기는 숫자가 문자로 바뀜

 

javascript에는 기본적인 자료형이 크게 5가지가 있습니다.

  1. number : 100, 123.10, Infinity
  2. string : 'a', "one", 'two', `javascript'
  3. boolean : true / false
  4. undefined : 할당이 안됨, 자료형을 알 수 없음
  5. null : 값이 비어 있음

여기서 자바와 달랐던 점은 number형에 Infinity라는 무한대의 값을 가진것과

백틱(``)으로 문자열을 표현할 수 있다는 점입니다.

 

(``)백틱 사용과 ${}를 이용하여 문자를 결합할 수 있음

 

대체로 자바스크립트에서는 ""가 아닌 백틱와 단따옴표를 많이 사용합니다.

 

그리고 alert를 사용했을때에는 확인창에서 입력을 하지 않으면 코드 실행이 정지되어 입력을 할 수 없습니다.

alert

 

확인창 안누르면 다음 단계로 못넘어감

그리고 명령어로 사용할 수 있는 것중에서 prompt가 있는데 이것은 입력값을 받을 수 있습니다.

하지만 요새는 그렇게 까지 많이 쓰이지 않습니다.

prompt코드
웹 브라우저에서 prompt화면

 

그리고 다른 것으로 confirm이 있습니다.

confirm은 예/아니오와 같은 형태의 질문을 할 때 사용 합니다.

confirm


형변환(type conversion)

형변환은 타입을 변환시키는 것으로 문자 -> 숫자 -> 불린 -> 문자 등등으로 타입을 변환 시키는 것을 말합니다.

Number형으로 타입변경
Boolean 타입 변경

문자열을 Boolean타입으로 변환시키면 비어있지 않다면 true, 비어있는 문자열이면 0이 나옵니다.

또한 기본적으로 1= true, 0 = false 값을 가집니다.

undefinded -> false

null -> flase

NaN -> false 값입니다.


연산자

연산자에는 말 그대로 피연산자가 1개인 단항(unary)연산자, 피연산자가 2개(binary) 연산자가 있습니다.


타입간의 계산

타입간의 계산표 잘 참고하세요
banana 출력

"banana"가 나오는 이유는

1. 문자열  "ba"++"a" + "a" 이고

2. "ba"+ (+"a") +"a"가 되어 괄호안의 것은 문자열 a를 숫자로 나타낼수 없으니 "NaN"이 되어 버립니다.
3.""ba"+"NaN" + "a"가 되므로 "baNaNa"이지만

toLowerCase()는 소문자로 바꾸어 버리는 기능을 하기 때문에

"banana"가 정답이 되는 것입니다.


오늘의 판봉평

문자열 변수 앞에 "+"단항 연산자를 쓰면 숫자로 변하면서 연산이 됩니다.

만약 a,b라는 문자열값을 가진 변수가 있고 해당 문자는 숫자일때 숫자값으로 계산을 하려면

Number(a) + Number(b)이런걸 쓰는 것보다

+a + +b 가 더 가독성이 좋고 깔끔하게 보이는 것 같습니다.