본문 바로가기

Front-End: Web/JavaScript

JavaScript의 특징

반응형

1. 동적 형변환

값에 따라 변수의 형변환이 자동으로 이루어진다.

var i = 1;
var ch = "a";
console.log(i + ch);	// 1a
ch = 1;
console.log(i + ch);	// 2

 

2. 프로토타입 기반 객체지향(POO)

Prototypal Object-Oriented. 즉, 객체를 생성할 때 클래스로부터 그 내용을 상속받아서 객체를 만드는 것이 아니라, 객체로부터 그 특성을 복제하여 새로운 객체를 생성하기 때문에 런타임 중에서도 객체의 속성과 값을 추가하거나 변경하고 삭제까지 가능하다.

<예제>

var person = { name: "David Ki", age: 24};

<결과>

person
Object
    age: 24
    name: "David Ki"
    __proto__: Object

<예제> : 객체(person)의 속성(height)과 값(187) 추가

person.height = 187;

<결과>

person
Object
    age: 24
    name: "David Ki"
    wieght: 187
    __proto__: Object

 

3. 실행 시 평가 (Run-Time Evaluation)

프로그램 실행 시 코드 블록을 실행할 수 있는 eval()와 같은 함수를 이용하여 프로그램 실행 도중에도 동적으로 코드를 실행할 수 있다. 

eval("var a = 1, b = 2;");
console.log(a, b);	//1 2

 

4. 고차 함수(Higher-Order Functions)

함수 속에 함수. 고차 함수란, 이자로 함수를 취하거나 함수를 반환할 수 있는 함수이다. 따라서 다른 언어에서는 불가능한 방식으로 함수들을 쉽게 조작할 수 있다.

var ho_func = function (param_func) { param_func(); };
ho_func(function () { console.log("hello!"); });

// hello!
반응형

'Front-End: Web > JavaScript' 카테고리의 다른 글

클로져(Closure)  (0) 2020.08.31
내장형 객체  (0) 2020.08.31
자바스크립트에서의 객체: Constructor  (0) 2020.08.31
객체지향 자바스크립트  (0) 2020.08.31
자바스크립트의 기초  (0) 2020.08.31