티스토리 뷰
자바스크립트의 버전
- 자바스크립트 버전은 ECMAScript(줄여서ES)의 버전에 따라서 결정되고, 이를 자바스크립트 실행 엔진이 반영합니다.
- ES5, ES6(ES2015).. 이런 식으로 버전을 일컫습니다.
- 2018년을 중심으로 ES6를 지원하는 브라우저가 많아서 몇 년간 ES6 문법이 표준으로 쓰이고 있습니다.
- ES6는 ES5문법을 포함하고 있어 하위호환성 문제가 없습니다.
- 다만 feature별로 지원하지 않는 브라우저가 있을 수 있어 조심해야 합니다.
변수
변수는 var, let, const로 선언 할 수 있다. 어떤 것을 사용하는 가에 의해서 scope라는 변수의 유효범위가 달라진다.
우선 var를 사용해서 변수를 선언해 확인해보자
let과 const는 ES6에 있는 기능, var를 많이 사용한다.
const는 한번 할당했다면 재할당이 불가능하다!
1
2
3
4
5
6
7 |
var a = 2;
var a = "aaa";
var a = 'aaa';
var a = true;
var a = []; //배열
var a = {}; // 오브젝트
var a = undefined; |
cs |
연산자
연산자 우선순위를 표현하기 위해서는 ()를 사용하면 됩니다.
수학연산자는 +,-,*,/,%(나머지) 등이 있습니다.
그리고 논리 연산자, 관계연산자, 삼항연산자도 있습니다.
1
2
3
4
5
6
7
8
9
10
11
12
13 |
//or 연산자 활용
const name = "crong";
const result = name || "codesquad"; //왼쪽 name이 존재 한다면 name을 result에 할당, 없으면 오른쪽 내용을 할당시킨다.
//왼쪽 name이 존재해 할당했다면, 오른쪽은 확인하지 않는다.
console.log(result);
var name = "crong";
var result = name && "codesquad"; // && 연산자는 오른쪽 값을 할당한다.
var name = "";
var result = name || "codesquad"; // 오른쪽 값이 할당된다.
console.log(result); |
cs |
연산자 - 삼항연산자
간단한 비교와 값 할당은 삼항연산자를 사용할 수 있습니다.
1
2
3 |
const data = 11;
const result = (data > 10) ? "ok" : "fail";
console.log(result); |
cs |
연산자 - 비교연산자
비교는 == 보다는 ===를 사용한다.
==로 인한 다양한 오류 상황이 있는데 아래 결과를 참고해봅시다.
1
2
3
4
5 |
0 == false;
"" == false;
null == false;
0 == "0";
null==undefined; |
cs |
* ==은 타입을 배제한 값만 비교, '==='은 그 값의 타입까지 비교한다.
자바스크립트의 Type
자바스크립트 타입에는 다양한 것이 존재합니다.
1 |
undefined, null, boolean, number, string, object, function, array, Date, RegExp |
cs |
1
2
3
4
5
6
7
8
9 |
function run(a){
console.log(typeof a)
}
run("Hello World");//string 출력
run(1234);//number 출력
//자바스크립트의 변수 타입은 변수가 실행 될때 타입이 결정된다! |
cs |
타입은 선언할 때가 아니고, 실행타임에 결정됩니다.
함수안에서의 파라미터나 변수는 실행될 때 그 타입이 결정됩니다.
타입을 체크하는 또렷한 방법은 없습니다.
정확하게는 toString.call 함수를 이용해서 그 결과를 매칭하곤 하는데, 문자, 숫자와 같은 자바스크립트 기본 타입은 'typeof' 키워드를 사용해서 체크할 수 있습니다.
배열은 타입을 체크하는 isArray함수가 표준으로 생겼습니다.
IE와 같은 구 브라우저를 사용해야 한다면 지원범위를 살펴보고 사용해야 합니다.
참고 사이트 : http://www.edwith.org/
※
본 게시물은 개인적인 용도로 작성된 게시물입니다. 이후 포트폴리오로 사용될 정리 자료이니 불펌과 무단도용은 하지 말아주시고 개인 공부 목적으로만 이용해주시기 바랍니다.
※
'웹 > JavaScript' 카테고리의 다른 글
[JS] 생성자패턴 (0) | 2018.09.02 |
---|---|
[JavaScript]조건문, 반복문 예제, 내장객체 (1) | 2018.02.09 |
[JavaScript]스크립트 영역 선언, 변수, 연산자 (0) | 2018.02.08 |
- Total
- Today
- Yesterday
- 자바스크립트 자료구조
- 파이썬 if문
- 파이썬 for
- 백준
- 파이썬 진수 변환
- 파이썬
- 명품 c++ 실습
- css 박스
- 파이썬 연산자
- 백준 10451
- 파이썬 예제
- 자료구조
- css 그리드
- 파이썬 클래스
- 파이썬 터틀
- 파이썬 단계적 개선
- 백준 1874
- css
- 파이썬 객체
- 자바스크립트 그래프
- 자바
- 파이썬 문자열
- 파이썬 선택문
- 파이썬 while
- 버츄어박스
- 웹
- 파이썬 함수
- 파이썬 리스트
- 백준 11501
- 자바 에센셜 실습문제
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |