반응형
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 |