본문 바로가기
Progamming/BoostCourse

자바스크립트 변수-연산자 타입

by 동그란 혜주 2019. 1. 19.
  • 들어가기 전에

컴파일 단계가 없는 자바스크립트의 type(형)은 실행단계에서 타입이 결정된다. 변수선언은 어떻게 정의하고, 자바스크립트의 타입은 어떤 것들이 있는지 확인해보자.




  • 학습 목표

1. 자바스크립트 변수 선언, 연산자 사용, Type을 이해한다.




  • 핵심 개념

- 변수선언

- 연산자

- Type 종류

- Type 확인 방법




  • 자바스크립트의 버전

- 자바스크립트 버전은 ECMAScript(줄여서 EC)의 버전에 따라서 결정되고, 이를 자바스크립트 실행 엔진에 반영한다.

- ES5, ES6(ES2015).. 이런 식으로 버전을 일컫는다.

- 2018년을 중심으로 ES6을 지원하는 브라우저(크롬, 파이어폭스)가 많아서 몇 년간 ES6 문법이 표준으로 쓰이고 있다.

- ES6는 ES5 문법을 포함하고 있어 하위 호환성 문제가 없다.

- 다만 ECMAScripit의 feature 별로 지원하지 않는 브라우저가 있을 수 있어 조심해야 한다.




  • 변수

- 모든 언어는 어떤 값, 또는 어떤 객체를 표현하는 변수가 있다.

- 변수는 var, let, const로 선언할 수 있다. (let과 const는 ES6에 있는 기능)

- 어떤 것을 사용하는 가에 의해서 scope, 즉 변수의 유효범위가 달라진다.

- ES6 이전까지는 var를 사용해서 변수를 선언할 수 있다.

- 우선 var를 사용해서 변수를 선언한다. 여러가지 변수 선언방법을 확인해보자.

var a = 2;
var a = "aaa";
var a = 'aaa';
var a = true;
var a = [];
var a = {};
var a = undefined;





  • 연산자

- 연산자 우선순위를 표현하기 위해서는 ()를 사용하면 된다.

- 수학 연산자는 +, -, *, /, % (나머지) 등이 있다.

- 논리연산자, 관계연산자, 삼항연산자도 있다.

//or 연산자 활용
var name = "crong";
var result = name || "codesquad";
console.log(result); //crong 출력
//and 연산자 활용
var name = "";
var result = name && "codesquad";
console.log(result); //codesquad 
cs

· OR 연산자는 왼쪽이 어떤 상황을 만족하면 오른쪽을 전혀 확인하지 않는다. (if / else문 단축해서 응용가능)

· AND 연산자는 무조건 오른쪽을 처리한다.

var result = false && true;
result; //false
cs

· && 연산자는 모든 값이 true 인지 확인하지만, 첫번째 값이 이미 false라면 그 이후의 값은 확인할 필요가 없다.




  • 연산자 - 삼항연산자

- 간단한 비교와 값 할당은 삼항연산자를 사용할 수 있다.

const data = 11;
const result = (data > 10 ) ? "ok" : "fail";
console.log(result); //ok 출력
cs

· if 문이나 조건 문들을 아주 간단한게 표현할 수 있다.




  • 연산자 - 비교연산자

- 비교는 == 보다는 ===를 사용한다.

- === 는 정확한 타입까지 비교한다.

- ==로 인한 다양한 오류 상황이 있는데 아래 결과를 참고해보자.

0 == "0"//true
0 === "0"//false
null == undefined; //true
null === undefined; //false
cs




  • 자바스크립트의 Type

- 자바스크립트 타입에는 다양한 것이 존재한다.

· undefined, null, boolean, number, string, object, function

- 타입은 선언할 때가 아니고, 실행타임에 결정된다.

- 함수 안에서의 파라미터나 변수는 실행될 때 그 타입이 결정된다.

function run(a) {
    console.log(typeof a);
}
run("hi"); //string
run(false); //boolean
cs

- 타입을 체크하는 또렷한 방법은 없다. 정확하게는 toString.call 함수를 이용해서 그 결과를 매칭하곤 하는데, 문자, 숫자와 같은 자바스크립 기본 타입은 'typeof' 키워드를 사용해서 체크할 수 있다.

- 배열은 타입을 체크하는 isArray 함수가 표준으로 생겼다. IE와 같은 구 브라우저를 사용해야 한다면 지원 범위를 살펴보고 사용해야 한다.

'Progamming > BoostCourse' 카테고리의 다른 글

자바스크립트 함수  (0) 2019.01.19
자바스크립트 비교-반복-문자열  (0) 2019.01.19
Request, Response 객체 이해하기  (0) 2019.01.17
Servlet 라이프 싸이클  (0) 2019.01.16
Servlet 작성 방법  (0) 2019.01.16

댓글