■ Javascript

[자바스크립트] Javascript를 기초부터 시작해보자! (2)

앞서 간단한 자바스크립트 내용에 대해서 살펴보았다.

그럼 얼마나 공부가 되었나 스스로 문제를 풀어보길 바란다.

 

1. 리터럴

var a = 10;
var b = “abc”;
var c = 10.3;
“good literal”;

리터럴에대해서 설명하시오.

[객체리터럴]
아래 프로퍼티 표현을 객체 리터럴로 표현하시오.

[객체 프로퍼티 표현] *여기서는 객체 전체가 아닌 28, “172m” 두 값만 리터럴이 된다.
var obj = new Obj();
obj.age = 28;
obj.tall = “172m”;

[배열리터럴]
아래 배열표현을 리터럴표현으로 바꿔보시오.

[배열표현]
var arr = new Array();
arr.push(“nice”);
arr.push(1);
arr.push(3);

2. 변수는 생략한다.

3. 데이터 타입

데이터 타입은 크게 두가지 범주로 나뉜다.

첫번째는 프리미티브(원시) 타입, 그리고 그외로 나눌 수 있다.
나누게 되는 기준은 (                                                               )이다.

프리미티브타입은 다시 크게 5가지로 나뉜다.

프리미티브타입 5개를 쓰고 설명하시오.

그외(                                                                    ) 등이 있다.

4. var
var는 모든 변수를 만들기 위한 키워드이다.
데이터 타입이 정해져 있지 않기 때문에, 약한타입언어라고 한다.
이부분 때문에 일반 강한타입형언어와는 다른 특색들이 나타난다. 아래서 다시 알아보자.

5. 값 타입과 포인터(참조) 타입

두 타입에 대해서 설명하시오.

Standard
■ Javascript

[자바스크립트] Javascript를 기초부터 시작해보자! (1)

자바스크립트에 대해서 알아보도록 하겠다.

현재 Client scripting으로서, jQuery 및 backbone.js, angluar.js 등 다양한 프레임워크가 사용된다. 허나 이는 모두 자바스크립트란 사실!  기본부터, 아주기본이지만 중요한것 위주로 알아보도록 하겠다.

레퍼런스는 “객체지향자바스크립트 (황인균 저 | 위키북스)”를 토대로하나 추가되거나 빠진 내용이 있다.

1. 리터럴

var a = 10;
var b = “abc”;
var c = 10.3;
“good literal”;

여기에서 10, “abc”, 10.3, “good literal” 이것이 모두 상수 이고, 이러한 상수를 리터럴 이라고 한다.
literal뜻은 “문자그대로” 란 의미인데, 보통 우리가 작성하는 코드는 변수 및 키워드로 대부분 이루어져 있다. 그중에 상수값, 즉 변수가 아닌 값이 되는 상수는 코드상에 적혀있는 있는 그대로의 값이 되며 따라서 리터럴 이라고 부른다.

이중에서 특별히 객체, 배열의 리터럴도 존재한다. 따라서 일반적으로 쓰이는 상수가 아닌 리터럴 이라고 하는 것이다.

[객체리터럴]
{age:28, tall:”172m”};

[객체 프로퍼티 표현] *여기서는 객체 전체가 아닌 28, “172m” 두 값만 리터럴이 된다.
var obj = new Obj();
obj.age = 28;
obj.tall = “172m”;

[배열리터럴]
[“nice”,1,3];

[배열 인덱표현]
var arr = new Array();
arr.push(“nice”);
arr.push(1);
arr.push(3);

2. 변수는 생략한다.

3. 데이터 타입

데이터 타입은 크게 두가지 범주로 나뉜다.

첫번째는 프리미티브(원시) 타입, 그리고 그외로 나눌 수 있다.
나누게 되는 기준은 포인터값인가, 실제 값인가의 차이이다.

프리미티브타입은 다시 크게 5가지로 나뉜다.

– 숫자 (Number) : 모든 숫자는 부동소숫점이다. 정수는 없다.
– 문자열 (String) : 문자는 없다 모두 문자열이다.
– 불린 (Boolean)
– null : 명시적으로 데이터가 없음을 나타낸다.
– undefined : 초기화가 되지 않았을때 자동으로 들어가 있는 값이다.

그외 Object, Array, Function, Date, RegExp 등이 있다.

4. var
var는 모든 변수를 만들기 위한 키워드이다.
데이터 타입이 정해져 있지 않기 때문에, 약한타입언어라고 한다.
이부분 때문에 일반 강한타입형언어와는 다른 특색들이 나타난다. 아래서 다시 알아보자.

5. 값 타입과 포인터(참조) 타입
간단한 예로, 함수를 예를 들어보자.
자바스크립트에서 함수는, 코드를 가르킨다. 이말은 즉, 우리가 작성한 자바스크립트 코드가,
메모리 어딘가에 올라가 있다는 의미이다. 근데 다른 언어와는 다르게 코드 자체가 그대로 올라간다.
그럼 어떤 변수를 이용해서 함수를 호출할때 함수안에는 코드가 있을까?
정답은 아니다. 함수안에 코드가 직접적으로 문자열 형태로 들어가 있다면 여러 문제가 발생한다.
예를 들면 A함수에 B함수를 넣어서 두개가 동일한 함수로 만든다고 가정해보자.
그럼 A함수와 B함수 모두 해당 함수의 문자열을 들고 있는다. 따라서 중복의 문제가 발생한다.
따라서 A와B는 모두 함수의 대한 주소값 (여기서는 메모리 주소)을 가르킨다.
특히 () 키워드는 해당 코드를 실행 시키라는 의미이다.

Standard