문법과 타입

2020. 1. 4. 22:15

자바스크립트의 기본 문법과 변수 선언, 데이터 타입과 리터럴들

 

  자바스크립트는 클라이언트 사이드 스크립트 언어(client-side script)로 쉽게 말해 개인의 컴퓨터에 있는 브라우저(익스플로러, 파이어폭스, 오페라, 크롬, ....)가 번역해서 실행하는 언어이다. 그러므로 서버보다 개인 컴퓨터의 영향을 받으며 성능이나 기능 또한 각 브라우저마다 다르게 나타날 수 있다.

 

  자바스크립트의 문법은 대부분 자바의 문법을 차용하였으나, Awk, Perl, Python의 영향도 받았다. 자바스크립트는 대소문자를 구분하며 유니코드 문자 세트를 사용하므로 메모장으로도 편집이 가능하다. 자바스크립트의 명령문을 구문이라 하면 한 구문은 세미콜론 (;)으로 구분한다.

 

 

주석

 

  주석은 실행되지 않으며 설명글을 작성할 수 있다.

 

    
	//한 줄 주석

	/*
		여러 줄 주석
	*/

 

 

선언

 

  자바스크립트에서 선언은 세개의 키워드가 있습니다.

 

var

  변수 선언 키워드

 

let

  블록 범위 선언 키워드

 

const

  상수 선언 키워드

 

변수

 

  변수란 쉽게 말해 특정 값을 저장하는 공간을 말하는데 이 특정 값은 변할 수 있다. 쉽게 말했는 지는 모르겠지만 컴퓨터의 기억장치에 특히 램에 저장하기 위해 주소를 할당해야 하는데 주소체계는 사용하기 어려움으로 사람이 사용하기 쉽게 문자를 조합하여 주소(식별자)를 만든다. 여기에는 특정 규칙이 있는데 문자와 언더바(_), 달러 표시($)로만 시작해야 하며 뒤에 숫자를 붙일 수 있고 대소문자를 구분한다.

  ex) strMyName, Your_Name, Name77, $Site, _intNumber

 

변수 선언

  • var 키워드를 사용, var x; 가장 일반적인 방법이며 전역 변수 또는 지역 변수 둘 다 사용 가능하다.
  • let 키워드를 사용, let x; 블록 범위의 지역 변수로만 가능하다.

  변수를 선언과 동시에 값을 넣는 것을 초기화라하고 보통 값을 대입한다 또는 입력한다, 할당한다라고 한다.

 

	var x; //선언
	var y = 4;  /* y를 선언과 초기화 */
	x = 7; //x에 7을 입력한다. x에 7을 할당한다. x에 7을 대입한다.

 

  변수를 선언만하고 초기화나 할당하지 않으면 undefined를 반환하며 선언하지 않은 변수를 사용하면 참조에러(ReferenceError)를 반환한다. 브라우저마다 조금씩 다르지만 변수를 왠만하면 선언하고 할당하여 사용하는 것이 정신 건강에 좋다.

 

	
	var a;
	console.log("The value of a is " + a); // The value of a is undefined

	var b;
	console.log("The value of b is " + b); // The value of b is undefined

	console.log("The value of c is " + c); // Uncaught ReferenceError: c is not defined

	let x;
	console.log("The value of x is " + x); // The value of x is undefined

	console.log("The value of y is " + y); // Uncaught ReferenceError: y is not defined
	let y;

 

  여기서 undefined 또한 제어문의 if문에서 다음과 같이 사용할 수 있다. 다음 구문을 보자.

 

	
	var input;
	if(input === undefined){
		console.log("input is undefined.");
	} else {
		console.log("input is something else.");
	}
반응형

'Javascript' 카테고리의 다른 글

스크롤바 넓이 구하기  (0) 2020.01.04
처음 자바스크립트 시작하기  (0) 2020.01.04
아코디언  (0) 2017.07.10
Jquery 리스트 순서 랜덤 변경  (0) 2017.01.11
경로 파라미터 추출 함수  (0) 2017.01.06