
Number Number는 원시 타입인 숫자를 다룰 때 유용한 프로퍼티와 메서드를 제공한다. Number 생성자 함수 const numObj = new Number(); console.log(numObj); Number 생성자 함수에 인수를 전달하지 않고 new 연산자와 함께 호출하면 [[NumberData]] 내부 슬롯에 0을 할당한 Number 래퍼 객체를 생성한다. const numObj = new Number(10); console.log(numObj); const numObj = new Number('10'); console.log(numObj); Number 생성자 함수의 인수로 숫자가 아닌 값을 전달하면 인수를 숫자로 강제 변환한다. 💫 Number 프로퍼티 Number.EPSILON Num..

배열 배열은 여러 개의 값을 순차적으로 나열한 자료구조다. *요소 : 배열이 가지고 있는 값 *인덱스 : 배열에서 자신의 위치를 나타내는 값 *length 프로퍼티를 갖는다. 자바스크립트에 배열이라는 타입은 존재하지 않는다. 배열은 객체 타입이다. 🔎 일반 배열과 자바스크립트의 배열이 어떻게 다른지 알아보자 일반적인 배열은 동일한 크기의 메모리 공간이 연속으로 나열된 자료구조를 말한다. 자바스크립트의 배열은 각 요소의 메모리 공간이 동일하지 않아도 되고 연속적이지 않을 수 있다. 자바스크립트의 배열은 일반적인 배열의 동작을 흉내 낸 특수한 객체다. 📍 밀집 배열 : 하나의 데이터 타입으로 통일되어 있으며 서로 연속적으로 인접해 있는 배열 📍 희소 배열 : 배열의 요소가 연속적으로 이어져 있지 않는 배열 ..

ES6에서는 함수를 사용 목적에 따라 일반 함수, 메서드, 화살표 함수 세 가지 종류로 구분했다. ES6 함수의 구분 constructor prototype super arguments 일반 함수 O O X O 메서드 X X O O 화살표 함수 X X X X 메서드 ES6 사양에서 메서드는 메서드 축약 표현으로 정의된 함수만을 의미한다. const obj = { x: 1, // foo는 메서드다. foo() { return this.x; }, // bar에 바인딩된 함수는 메서드가 아닌 일반 함수다. bar: function() { return this.x;} }; console.log(obj.foo()); // 1 console.log(obj.bar()); // 1 📢ES6 메서드는 생성자 함수로서 호..

클래스 자바스크립트에서 클래스를 한 문장으로 종결시키겠다. 클래스는 함수이다. 자바스크립트에서 클래스는 생성자 함수와 매우 유사하게 동작하지만 몇 가지 차이가 있다. 클래스를 new 연산자 없이 호출하면 에러가 발생한다. 클래스는 상속을 지원하는 extends와 super 키워드를 제공한다. 클래스는 호이스팅이 발생하지 않는 것처럼 동작한다. 클래스 내의 모든 코드는 암묵적으로 strict mode가 실행된다. 클래스는 열거되지 않는다. 생성자 함수와 클래스는 프로토타입 기반의 객체지향을 구현했다는 점에서 매우 유사하다. 하지만 클래스는 생성자 함수 기반의 객체 생성 방식보다 견고하고 명료하다. 따라서 클래스를 새로운 객체 생성 메커니즘으로 보면 된다. 🎢 클래스는 함수로 평가되어 호이스팅이 발생한다. ..

클로저 외부 함수보다 중첩 함수가 더 오래 유지되는 경우 중첩 함수는 이미 생명 주기가 종료한 외부 함수의 변수를 참조할 수 있다. 이러한 중첩 함수를 클로저라 한다. 📌 const x = 1; // ① function outer() { const x = 10; const inner = function () { console.log(x); }; // ② return inner; } // outer 함수를 호출하면 중첩 함수 inner를 반환한다. // 그리고 outer 함수의 실행 컨텍스트는 실행 컨텍스트 스택에서 팝되어 제거된다. const innerFunc = outer(); // ③ innerFunc(); // ④ 10 위 예시 코드를 보면 outer() 함수는 inner() 함수를 반환(retur..

1. 자바스크립트의 탄생 1995년, 웹페이지의 보조적인 기능을 수행하기 위해 브랜던 아이크(Brendan Eich)가 자바스크립트를 개발했다. 2. 자바스크립트의 표준화 자바스크립트는 경쟁사인 마이크로소프트의 JScript와의 시장 점유율 싸움으로 인해 브라우저에 따라 웹페이지가 정상적으로 동작하지 않는 크로스 브라우징 이슈가 발생했다. 따라서 모든 브라우저에서 정상적으로 동작하는 표준화된 자바스크립트가 필요했다. 그리고 1997년 7월, ECMA-262라 불리는 표준화된 자바스크립트 초반(ECMAScript)이 등장한다. ECMAScript는 자바스크립트 표준 사양인 ECMA-262를 말하며, 핵심 문법을 규정한다. 버전 출시 연도 특징 ES1 1997 초판 ES2 1998 ISO/IEC 16262 ..
- Total
- Today
- Yesterday
- java
- OS
- 자바
- 풀이
- C++
- 그리디
- 자바스크립트
- 쉽게 배우는 자바 프로그래밍
- 프로그래머스
- 파이썬
- 정렬
- 우종정
- Web
- 쉽게배우는
- JS
- 쉽게배우는자바프로그래밍
- 운영체제
- Python
- 백준
- 정리
- BFS
- 연습문제
- CPP
- 해답
- py
- 구현
- 정답
- 알고리즘
- 문자열
- 답
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |