Prototype

프로토타입

자바스크립트는 명령형, 함수형, 프로토타입 기반 객체지향 프로그래밍을 지원하는 멀티 패러다임 프로그래밍 언어다.
자바스크립트는 객체지향 언어가 아니라고 오해하는 경우도 있지만 자바스크립트는 클래스 기반 객체지향 프로그래밍 언어보다 효율적이며 더 강력한 객체지향 프로그래밍 능력을 지니고 있는 프로토타입 기반의 객체지향 프로그래밍 언어다.

Read More

no-title

const o = { name: 'Lee', age: 20 }; const createObject = function (obj, key) {

Read More

no-title

// 배열의 모든 인스턴스가 사용할 수 있어야 한다. // 기존의 push와 동일한 동작을 할 수 있어야 한다. // push는 마지막 요소를 밀어 넣고 length를 반환한다. Array.prototype.myPush = function (...args) { // args에 값이 배열로 넘어온다.

Read More

Arguments object

arguments 객체

arguments 객체는 함수에 전달된 인수에 해당하는 “Array 형태”의 객체이다.
여기서 “Array 형태”란, arguments가 length 속성과 더불어 0부터 인덱스된 다른 속성을 가지고 있지만, Array의 forEach, map과 같은 내장 메서드를 가지고 있지 않다는 뜻이다.

Read More

Function and First-class object

함수와 일급 객체

1. 일급 객체

다음과 같은 조건을 만족하는 객체를 일급 객체(first-class object) 라 한다.

Read More

Destructuring assignment

구조 분해 할당

디스트럭처링 할당(구조 분해 할당)은 구조화된 배열과 같은 이터러블 또는 객체를 destructuring(비구조화, 구조 파괴)하여 1개 이상의 변수에 개별적으로 할당하는 것을 말한다.
배열과 같은 이터러블 또는 객체 리터럴에서 필요한 값만 추출하여 변수에 할당할 때 유용하다.

Read More

Wrapper Object

래퍼 객체

1. 배열

래퍼 객체에 대해 이해하기 전에 배열에 대해서 간단히 이야기하도록 하자.

Read More

제어문 연습문제

1. 변수 x가 10보다 크고 20보다 작을 때 변수 x를 출력하는 조건식을 완성하라

1
2
3
4
5
6
var x = 15;

// 변수 x가 10보다 크고 20보다 작을 때 변수 x를 출력하는 조건식을 완성하라.
if (...) {
console.log(x);
}

Read More

Object creation by constructor

생성자 함수에 의한 객체 생성

객체 리터럴에 의한 객체 생성 방식은 가장 일반적이고 간단한 객체 생성 방식이다. 객체는 객체 리터럴 이외에도 다양한 방법으로 생성할 수 있다.

Read More

Ternary Operator

삼항 연산자

조건부 삼항 연산자는 자바스크립트에서 세 개의 피연산자를 취할 수 있는 유일한 연산자이다. 보통 if문의 단축 형태로 쓰인다.

Read More