이제 자바스크립트는 초기의 단순한 언어가 아닙니다. 사용되는 환경도, 연결할 수 있는 플러그인도 너무나 다양해졌습니다.자바스크립트 하나를 공부한다는 게 공부할 양이 무척이나 많아졌습니다.그 뿐만이 아니라 초기의 단순한 목적으로 만들어진 언어다보니 언어로서 미흡했던 부분
블로그 이전 중입니다. 주소 : https://dev-sujeong.gitbook.io/javascript/
블로그 이전 : https://dev-sujeong.gitbook.io/javascript/basic-syntax/index/data-type
https://dev-sujeong.gitbook.io/javascript/basic-syntax/index/operator
조건에 따라 다른 실행을 하기 위해 분기하는 문단?입니다. 삼항연산자로 많이 사용되지요.
반복문의 시작 지점이나 끝 지점에서 조건을 확인하는 것이 아니라 본문 가운데 혹은 본문 여러 곳에서 조건을 확인해야 하는 경우, '무한 반복문 + break’ 조합을 사용하면 좋습니다.do~while 반복문본문이 먼저 실행되고, 이후 조건을 확인합니다.이는 조건이 tr
중복 피하기기능을 분리하기oldnewdefault parameter로 값, 식이 올 수 있습니다. 단, 뒤에 있는 변수를 참조하는 건 안됩니다. TDZ에 걸리기 때문이죠.correctwrong기존에 존재하던 arguments에는 기본값이 적용되지 않습니다.함수 안에서
대괄호 표기법객체의 키를 지정하는 방법은 크게 2가지 입니다. '.'과 '\[]'이죠. 대괄호는 점보다 더 유연하게 동작이 가능한데요.대괄호는 키가 띄어 쓰기가 되어있어도 키를 인지할 수 있고, 대괄호 안에 있는 표현식의 평가를 런타임에서 하기 때문에 키 값을 변수로
객체 프로퍼티 키로 올 수 있는 단 두 개의 자료형이 있습니다. 문자형과 심볼형이죠.심볼형은 원시형 데이터로 유일한 식별자를 만들고 싶을 때 사용합니다.() 안에는 심볼 이름을 담을 수 있고, 같은 이름으로 만들어도 각기 다른 심볼입니다. (name)은 오직 이름표 역
여러 개의 유사한 객체를 만들 때 필요합니다.일반 함수와 생성자 함수의 기술적인 차이가 원래 없었어서 구분하기 위해 함수 이름의 첫 글자를 대문자로 하는 관례와 실행할 때 new 키워드를 붙이는 점만 다릅니다. 이런 실수를 방지하기 위해 생성자 함수를 일반 함수처럼 호
자바스크립트에서 기본적으로 지원하는 진법은 3개입니다.이 외의 진법은 parseInt를 사용합니다.위의 코드를 실행해보면, 모두 255라는 값이 나옵니다. 우리가 몇진법으로 표현하든, 리턴되는 값은 10진법의 숫자인 셈이죠.그런데 우리가 코딩할 때, 해당 진법의 값을
문자형은 세 가지 방식으로 표현 가능합니다.작은따옴표 ''큰따옴표 ""역따옴표 \`\`자동 줄바꿈이 됩니다.string interpolation: 데이터를 ${}로 쉽게 연결합니다.tag function첫 번째 파라미터로 백틱 안에 있는 문자열들을 ${}기준으로 잘라서
for문과 같은 동작.Array.prototype.forEach(callback\[, thisArg])callback: function (currentValue\[, index\[, originalArray]])currentValue: 현재값index: 현재 인덱스or
객체 - 문자열, 심볼 키가 있는 컬렉션을 저장함배열 - 순서가 있는 컬렉션을 저장함Map - 다양한 자료형 키가 있는 컬렉션을 저장함Set - 중복을 허용하지 않는 값을 모아놓은 컬렉션. 키가 없습니다.객체와 유사하지만 키에 올 수 있는 자료형의 제약이 없는 점이 다
한 자료형에 국한된 개념도 아니고, 다양하게 변조되어 쓰이고 있기에 하나의 챕터로 분리하였습니다.풀어 말하면 어떠한 자료형 '구조'를 '분해'하여 '할당'해 주는 것입니다. 파괴하는 것이 아니기에 기존 자료형 구조가 변경될 염려는 없으며, 할당 연산자 우측에는 모든 이
new Date() 현재시간 기준 생성new Date(milliseconds) 타임스탬프 기준 생성1970.1.1 0시0분0초를 기준으로 밀리초 후의 시점을 표시new Date(datestring) 날짜 문자열 기준 생성new Date(year, month, date,
Javascript Object Notation은 값이나 객체를 나타내주는 범용 포맷입니다.원래 자바스크립트에서 사용할 목적으로 만들어졌지만, 다른 언어에서도 라이브러리를 활용하여 다룰 수 있어서 데이터 교환 목적으로 많이 쓰입니다.JSON.stringify(value
비동기 데이터 통신을 하는 경우, 동기가 아니기 때문에 해당 통신 후, 그 결과물을 가지고 하는 작업 혹은 동기적으로 이루어져야 하는 작업을 할 때 오류가 발생합니다. 이를 위해 비동기 데이터 통신을 동기적으로 처리하는 작업 방법들을 알아봅시다.비동기 통신을 하는 함수
여러 개의 값을 필요에 따라 하나씩 반환할 수 있는 함수입니다.제너레이터 함수는 function\*을 통해 만들 수 있고,함수를 호출할 때 코드가 실행되는 것이 아니라 실행을 처리하는 특별 객체 '제너레이터 객체'가 반환됩니다.next제너레이터의 주요 메서드로써 호출
개발하는 애플리케이션의 크기가 커질 때 파일을 분리하는데, 이 때 분리된 파일 각각을 '모듈'이라고 부릅니다.보통 클래스 하나 혹은 복수의 함수로 구성된 라이브러리 하나로 나뉩니다.자바스크립트의 모듈 표준이 없었을 때, 써드파티 라이브러리들로 모듈시스템을 구현했습니다.
특정 객체를 감싸서 객체에 가해지는 작업을 중간에서 가로채는 객체.target - 감싸는 객체. 함수도 가능handler - 동작을 가로채는 메서드인 trap이 담긴 객체. 프락시 설정하는 곳. trap이 없으면 target이 작업을 직접 실행함.proxy로 감싼 이후