브라우저의 디버깅 콘솔(Firefox 웹 콘솔 등)에 접근할 수 있는 메서드를 제공한다.동작 방식은 브라우저마다 다르다.console 객체는 아무 전역 객체에서나 접근할 수 있다.https://developer.mozilla.org/en-US/docs/Web/
자바스크립트에는 여덟 가지 기본 자료형이 있습니다.숫자형 – 정수, 부동 소수점 숫자 등의 숫자를 나타낼 때 사용합니다. 정수의 한계는 ±253 입니다.bigint – 길이 제약 없이 정수를 나타낼 수 있습니다.문자형 – 빈 문자열이나 글자들로 이뤄진 문자열을 나타낼
.indexOf(찾을 값); → 찾고자 하는 값의 인덱스가 없으면 -1 호출.lastIndexOf(찾을 값); → 찾고자 하는 값을 뒤에서 부터 찾는다..includes(찾을 값); → 값이 있는지 없는지 true / false.split(분리 기준의 문자열) → 문자
변수(Variable)는 데이터를 저장할 때 쓰이는 '이름이 붙은 저장소'이다.ex) 온라인 쇼핑몰 애플리케이션을 구축 시 '상품'이나 '방문객' 등의 데이터(값)을 저장 시 사용한다.코드를 작성하다 보면 유사한 동작을 하는 코드가 여러 곳에서 필요할 때가 많다.이 동
비교 연산자는 불린값을 반환합니다.문자열은 문자 단위로 비교되는데, 이때 비교 기준은 '사전’순(정확히는 유니코드 순)입니다.서로 다른 타입의 값을 비교할 땐 숫자형으로 형 변환이 이뤄지고 난 후 비교가 진행됩니다(일치 연산자는 제외,불린값의 경우 true는 1, fa
반복되는 구문을 작성 / 배열 or 문자열 등을 순회할 때 주로 사용주로 객체의 key & value를 순회할 때 주로 사용in -> index로 무엇이 of -> value로 무엇이조건문이 참이면 문장을 계속해서 수행
배열은 특수한 형태의 객체로, 순서가 있는 자료를 저장하고 관리하는 용도에 최적화된 자료구조입니다.배열의 순서는 인덱스라는 용어를 쓰고 0부터 시작한다.index 를 벗어나면 Undefinded 가 출력된다.이중배열이란 ? 배열 안에 배열이 있는것으로 \[1,2,3,4
객체는 몇 가지 특수한 기능을 가진 연관 배열(associative array)입니다.객체는 프로퍼티(키-값 쌍)를 저장합니다.프로퍼티 키는 문자열이나 심볼이어야 합니다. 보통은 문자열입니다.값은 어떤 자료형도 가능합니다.아래와 같은 방법을 사용하면 프로퍼티에 접근할
string, number, boolean, undefined, bigint, symbol 총 6가지모든 원시 값은 불변하여 변형할 수 없습니다. 원시 값 자체와, 원시값을 할당한 변수를 혼동하지 않는 것이 중요합니다. 변수는 새로운 값을 다시 할당할 수 있지만, 이미
내부 함수는 외부 함수에 선언된 변수에 접근 가능한 함수,함수를 리턴하는 함수 이다. 즉, 함수식 안에 또다른 함수식이 있는 형태클로저를 이용해 내부 함수를 단 하나만 리턴하는 것에 그치지 않고, 객체에 담아 여러 개의 내부 함수를 리턴하도록 만들기도 하며,정보의 접근
객체와 배열은 자바스크립트에서 가장 많이 쓰이는 자료 구조입니다.키를 가진 데이터 여러 개를 하나의 엔티티에 저장할 땐 객체를, 컬렉션에 데이터를 순서대로 저장할 땐 배열을 사용하죠.개발을 하다 보면 함수에 객체나 배열을 전달해야 하는 경우가 생기곤 합니다. 가끔은 객
자바스크립트에도 특별한 대우를 받는 일급 객체(first-class citizen)가 있습니다. 대표적인 일급 객체 중 하나가 함수입니다.변수에 할당(assignment) 할 수 있다.다른 함수의 인자(argument)로 전달될 수 있다.다른 함수의 결과로서 리턴될 수
객체 지향 프로그래밍은 하나의 모델이 되는 청사진(blueprint)을 만들고, 그 청사진을 바탕으로 하여 여러 객체를 만드는 프로그래밍 패턴이다.이러한 청사진이 클래스(class)가 되고, 이걸 바탕으로 하여 만든 객체가인스턴스 객체(instance)라고 한다.new
Achievement GoalsJSON 구조가 재귀 함수를 사용할 수 있는 Tree 구조임을 이해할 수 있다.JSON.stringify와 JSON.parse가 serialize, deserialize라는 것을 이해할 수 있다.JSON.stringify와 JSON.par
고차함수의 인자로 전달되는 함수를 콜백 함수(Callback function)라고 합니다. 콜백 함수는 어떤 작업이 완료되고 호출하는 경우가 많아서, 업무 중 걸려온 전화에 답신하는 전화를 나타내는 콜백이라는 이름이 붙여졌습니다.자바스크립트에서 비동기적 프로그래밍을 할
AJAX AJAX란 무엇인가? Asynchronous Javascript And XML의 약자로, 비동기적으로 JS를 사용해서 데이터를 받아와 동적으로 DOM을 갱신 및 조작하는 웹 개발 기법을 의미한다. 여기서 XML이 있는 이유는 예전엔 데이터 포맷으로 XML
이벤트 위임을 알기 위해선 선수지식으로 이벤트 버블링과 캡쳐링의 동작방식을 알아야 한다.이벤트 버블링 이란, 하위 엘리먼트에 이벤트가 발생할 때 그 엘리먼트부터 시작해서 상위요소까지 이벤트가 전달되는 방식을 말한다.이벤트 캡쳐링 이란, 하위 엘리먼트에 이벤트 핸들러가
코드의 실행환경에 대한 여러가지 정보를 담고 있는 개념 으로, 간단히 말하자면 자바스크립트 엔진에 의해 만들어지고 사용되는 코드 정보를 담은 객체의 집합이라고 할 수 있다.자바스크립트의 코드는 3가지 종류로 이루어지는데, 글로벌 스코프에서 실행하는 글로벌 코드, 함수
모든 특징들을 나열하진 않고 중요하다고 생각하는 특징들만 나열한다.=> 로 사용할 수 있으며 함수와 달리 this 가 함수 스코프에 바인딩 되지 않고 렉시컬 스코프를 가진다. 즉, 자신을 감싸는 코드와 동일한 this 를 공유한다. 또한 표현식과 문에서도 사용할 수 있
스코프란 자바스크립트 엔진이 참조의 대상이 되는 식별자(Identifier)를 검색할 때 사용하는 규칙의 집합 이다. 즉, 어떤 변수를 사용하거나 함수를 호출하려고 할 때 해당하는 식별자로 사용하는데, 그 식별자를 검색하는 메커니즘이라고 이해하면 된다.프로그래머가 코드
호이스팅이란 "끌어올린다" 라는 뜻으로 변수 및 함수 선언문이 스코프 내의 최상단으로 끌어올려지는 현상 을 말한다. 여기서 주의할 점은 "선언문" 이라는 것이며 "대입문"은 끌어올려지지 않는다. 아래 코드를 보자.컴파일러는 자바스크립트 엔진이 인터프리팅(Interpre
ECMAScript 명세에서 의미론적인 부분을 완전히 정의해놓은 객체들로, 다음과 같은 것들이 있다.ObjectFunctionDateMathparseInteval ...자바스크립트를 실행하는 환경에 종속된 객체로 그 환경에서만 찾아볼 수 있는 객체이다. 만약 브라우저
IIFE는 직역하면 즉시-실행 함수 표현식이다. 즉, 2가지 조건을 지닌다.즉시 실행하여야 한다.함수 표현식이어야 한다. ( = 함수 선언문이 아니어야 한다. )결국, 정의하자면 함수 표현식을 즉시 실행하는 것을 말하며 해당 함수는 익명함수와 기명함수 모두 가능 하다.
EC(Execution Context)가 생성될 때마다 this의 바인딩이 일어나며 우선순위 순으로 나열해보면 다음과 같다.new 를 사용했을 때 해당 객체로 바인딩된다.call, apply, bind 와 같은 명시적 바인딩을 사용했을 때 인자로 전달된 객체에 바인딩된
둘 다 동일한 비교를 하지만 엄격한 동등 비교 연산자(===)의 경우, 타입변환(Type conversion)이 일어나지 않으며 타입이 일치해야한다.위 경우를 보면, 동등 비교 연산자(==) 를 사용해서 여러가지 원시타입을 비교해보았는데, 타입변환이 발생함을 볼 수 있
자바스크립트 엔진이 자바스크립트를 실행할 때 원시 타입 및 참조 타입을 저장하는 메모리 구조로 콜 스택과 힙을 가진다.콜 스택 : 원시타입 값 과 함수 호출의 실행 컨텍스트(Execution Context) 를 저장하는 곳이다.힙 : 객체, 배열, 함수와 같이 크기가
자바스크립트는 단일 스레드(Single-threaded) 기반 언어 로, 자바스크립트 엔진이 단일 콜 스택을 갖는다. 이 말은 요청이 동기적으로 처리된다는 것을 의미한다. 그렇다면 비동기 요청은 어떻게 처리될 수 있을까? 그것은 바로 자바스크립트를 실행하는 환경인 브라
자바스크립트에서 정말 헷갈리는 개념으로, 자바스크립트를 다루는데 있어서 굉장히 중요한 역할을 하기 때문에 반드시 이해하여야 한다.자바스크립트의 모든 객체는 자신의 "원형(Prototype)" 이 되는 객체를 가지며 이를 프로토타입이라고 한다. 보이지 않는 속성인 \[\