SEB 2일차 정리(변수, 타입, 조건문)

Jogi's 코딩 일기장·2021년 6월 17일
0

부트캠프를 시작하고나서 어느덧 4일차까지 진행했다. 2일차부터 본격적인 공부를 시작하고 Javascript기초에 대해서 공부를 하는 시간이 끝났다. 내일부터는 HTML, CSS에 대해서 공부를 할 계획이 돼있다. 지금부터는 2~4일차에 내가 공부했던 것을 정리하고 느낀 것을 정리해보려 한다.

2일차 (변수, 타입, 조건문)

우선 나는 java를 위주로 공부했기 때문에 javascript사용에 있어서 조금은 생소했지만, 어느정도의 사용법은 얼마해보지 않고 익힐 수 있었다.

변수(variable)

변수는 원하는 데이터를 편리하게 저장하고 꺼내쓰는 보관함.

변수를 보관함이라고 생각한다면 내가 원하는 데이터를 집어넣을 수 있는 사물함, 보관함 같은 것이다. 내가 원하는 데이터를 저장하고 찾아쓰고 싶다면 그 보관함의 이름만 알면 편하게 꺼내 쓸 수 있다는 것이다.

변수의 사용

ex) let fruit = '사과';
  • 변수의 선언은 let을 통해 됐으며, 변수의 이름은 fruit이다
  • 사과라는 데이터가 fruit이라는 데이터 보관함에 저장이 된다. 이를 데이터가 할당됐다고 한다.
  • 변수에는 공백을 사용하지 못한다.
  • 한 번 선언했던 변수를 다시 사용할 때는 선언을 하는 let을 사용하지 않는다. 변수명만 사용한다.
  • 변수에 값이 할당되지 않았다면, 정의되지 않음을 뜻하는 undefined값이 있다.
  • 변수는 let, var, const를 이용해 선언할 수 있다.

변수의 선언

  • let 변수명;
    -재선언이 불가하며, 재할당은 가능하다.
  • var 변수명;
    -재선언, 재할당이 가능하다. 할당되는 값이 유동적으로 바뀔 수 있는데 이는 단점으로도 나타날 수 있다고 한다.
  • const 변수명;
    -재선언, 재할당이 불가능하다.

타입(Type)

숫자나 문자와 같이 변수에 할당할 수 있는 형태

  • 원시자료형(string, number, boolean, undefined), 참조자료형이 있다.
  • 함수 또한 자료형이다.
  • java와 다르게 값의 비교는 ==, != 도 가능하지만 예외가 많으며 ===, !==를 사용한다.
  • typeof를 이용한 타입의 비교를 한다.

신기한 것은 java와 다르게 여기에서는 타입에 상관없이 선언만 해주면 그 타입에 맞게 값이 들어온다는 것이었다. 이것은 헷갈릴 수도 있지만 꽤 편한 것 같다.

함수(function)

프로그램이 돌아가면서 하나의 작은 기능, 논리적인 일려읜 작업을 하는 하나의 단위

  • 함수는 입출력간의 매핑이 되는 것이며, 호출 후에는 call을 한 곳으로 다시 돌아온다. 이는 return을 통해서 가능하다.
  • 함수 선언 방법에는 함수 선언식, 함수 표현식, 화살표 함수가 있다.

함수 선언식

우리가 흔히 알고 있는 함수 선언방법이다.

function 함수이름(arguments) {
	(body)...;
}

함수선언식은 호이스팅이 가능하다. 이 말은 아래에서 함수가 선언이 되어도 위에서 사용이 가능하다는 말이다.

함수 표현식

const 함수이름 = function(arguments) {
	(body)...;
};

화살표 함수

const 함수이름 = (arguments) => {
	(body)...;
};

화살표 함수는 body에 return문만 있는 경우 return과 중괄호를 생략할 수 있다. 하지만 리턴을 생략하고, 중괄호는 생략할 수 없다.

const 함수이름 = (arguments) => body;

이렇게 함수의 선언 방법이 여러가지가 있지만, 아직 나는 기본적인 함수 선언식이 더 편할 것 같다. 호이스팅이라는 것도 배우게 됐는데 그걸 생각하면 선언식이 더 나은 거 같기도 하다.

2일차 마무리

2일차에는 변수, 타입, 함수에 대해서 알게됐다. java를 배운 덕에 쉽게 이해할 수 있었던 부분도 있었고 분명히 다른 점도 있었다. 다른 부분을 익숙해지는데는 시간이 좀 걸리겠지만 여러모로 편리한 부분이 꽤 많았던 것 같다. 아직 배울 것이 산더미이지만 시작이 산뜻하다. 잘 이겨내보자.

Reference

  • 코드스테이츠(CodeStates) 강의자료
profile
프로그래머로서의 한걸음

0개의 댓글