자바스크립트에 대한 기본적인 개념과 작동 원리에 대한 큰 타이틀은 스터디 진도를 다 나가서 그동안 스터디 진행했던 부분을 복습 하면서 제가 중요하다고 생각 하는 부분을 정리했습니다.
수가 주어지면 그 수의 각자리수를 내림차순으로 정렬하기.첫째 줄에 정렬하려고 하는 수 N이 주어지는데 N은 1,000,000,000보다 작거나 같은 자연수다.
배열 A가 주어졌을 때, N번째 큰 값을 출력하는 프로그램을 작성하시오. 이때 배열 A의 크기는 항상 10이고 자연수만 가지며, N은 항상 3이다.
n 개의 피보나치 수를 재귀 호출과 동적 프로그래밍으로 구하는 알고리즘의 실행 횟수 구하기이때 아래의 의사 코드를 사용하여 피보나치 수의 실행 횟수를 구한다
자바스크립트에 대한 기본적인 개념과 작동 원리에 대한 큰 타이틀은 스터디 진도를 다 나가서 복습 하면서 제가 중요하다고 생각 하는 부분을 정리했습니다.
ES6에서 도입된 클래스는 함수이며 기존 프로토타입 기반 패턴을 클래스 기반 패턴처럼 사용할 수 있도록하는 새로운 객체 생성 메커니즘이라고 할 수 있다. 클래스와 생성자 함수 모두 프로토타입 기반의 인스턴스를 생성하지만 정확하게 동일한 방식으로 작동하진 않는다.클래스는
클로저는 함수를 일급 객체로 취급하는 함수형 프로그래밍 언어에서 사용되는 중요한 특성이다."A closure is the comvination of a function and the lexical environment within which that function w
<mark style='background-color: ECMAScript 사양에서 소스코드는 4가지 타입으로 구분되고, 4가지 타입의 소스코드는 실행 컨텍스트를 생성한다. 이 4가지 소스코드 타입에 따라 실행 컨텍스트를 생성하는 과정과 관리 내용이 다르다.전역
this는 자신이 속한 객체 또는 자신이 생성할 인스턴스를 가리키는 자기 참조 변수다. this를 통해 자신이 속한 객체 또는 자신이 생성할 인스턴스의 프로퍼티나 메서드를 참조할 수 있다.strict mode가 적용된 일반 함수 내부의 this에는 undefined가
ECMAScript 사양에 정의된 객체이며, 애플리케이션 전역의 공통기능을 제공한다. ECMAScript 사양에 정의 되어있기 때문에 자바스크립트 실행환경과 관계없이 언제나 사용할수 있다. 표준 빌트인 객체는 전역 객체의 프로퍼티로 제공되기 때문에 별도의 선언 없이 전
위 코드를 보면 함수 스코프와 전역스코프에 변수 age에 대한 선언이 존재하지 않기 때문에 ReferenceError를 발생시킬 것 같지만 자바스크립트 엔진은 암묵적으로 전역 객체에 age 프로퍼티를 동적 생성한다. 이때 전역 객체의 age 프로퍼티는 마치 전역 변수처
<mark style='background-color: 프로토타입의 프로토타입은 언제나 Object.prototype 이다. 또한 프로토타입 체인의 최상위에 위치하는 객체는 언제나 Object.prototype이며 Object.prototype을 프로로토타입 체인
자바스크립트에는 클래스 기반 객체지향 프로그래밍 언어의 특징인 클래스와 상속, 캡슐화를 위한 키워드인 public, private, protected 등이 없어서 객체지향 언어가 아니라고 오해하기도 하지만 자바스크립트는 클래스 기반 객체지향 프로그래밍 언어보다 더 효율
일급객체는 4가지 조건을 만족해야 한다.무명의 리터럴로 생성할 수 있어 런타임에 생성이 가능하다.변수나 자료구조(객체, 배열 등)에 저장 할 수 있다.함수의 매개변수에 전달할 수 있다.함수의 반환값으로 사용할 수 있다.자바스크립트에서 함수는 4가지 조건을 모두 만족하는
Object 생성자 함수 >생성자 함수란 new 연산자와 함께 호출하여 객체(인스턴스)를 생성하는 함수를 말한다. 생성자 함수에 의해 생성된 객체를 인스턴스라 한다. new연산자와 함께 Object 생성자 함수를 생성해 빈 객체를 생성하고, 프로퍼티 또는 메서드를 추
내부 슬롯과 내부 메서드는 자바스크립트 엔진의 구현 알고리즘을 설명하기 위해 ECAMScript 사양에서 사용하는 의사 프로퍼티와 의사 메서드다.내부 슬롯과 내부 메서드는 자바스크립트 엔진의 내부 로직으로 직접 접근하거나 호출할 수 있는 방법은 없다. 하지만 일부 내부
var 키워드로 변수를 선언하면 중복 선언이 가능하다. 중복 선언이 된 변수 선언문은 자바스크립트 엔진에 의해 var 키워드가 없는 것처럼 동작하고 초기화 문이 없는 변수 선언문은 무시된다. 따라서 의도치 않게 먼저 선언된 변수 값이 변경되는 부작용이 발생한다. var
변수는 생성되고 소멸되는 생명주기(life cycle)이 존재한다. 전역변수의 생명주기는 더이상 실행할 문이 없을때까지이며 함수 내부에 선언된 지역변수는 함수의 생명주기와 일치한다.앞에서 살펴본 변수 호이스팅 개념인 런타임 이전단계에서 변수 선언이 먼저 수행된다는 개념
모든 식별자(변수 이름, 함수 이름, 클리스 이름 등)는 자신이 선언된 위치에 의해 다른 코드가 식별자 자신을 참조할 수 있는 유효범위가 결정된다.즉, 스코프는 식별자가 유효한 유효 범위를 말한다. 또한 스코프를 통해 어떤 변수를 참조할 것인지 결정하기 때문에 자바스크
함수는 일련의 과정을 문으로 구현하고 코드 블록으로 감싸서 하나의 실행 단위로 정의한 것이다. 함수를 사용하는 이유 함수는 한번 만들어두면 필요할때 여러번 호출해서 사용할 수 있다. 따라서 재사용이 가능하다는 장점이 있다. 함수를 사용하면 코드의 중복을 억제하고 재사