DreamCoding
Javascript transcompiler - BABEL을 이용해 변환
Single Page Application - SPA
API - Application Programing Interface
console API - 브라우저가 가지고 있는 API
자바스크립트의 공식사이트
ecma-international.org
developer.mozilla.org
DOM에서 script의 위치에 따라 로딩 방법
Dom실행 순서
HTML Pharsing
Script Fetching(스크립트 다운로드)
Executing Script(스크립트 실행)
👌 DOM을 그릴 때, 최초 HTML을 파싱한다. 이후 script를 만나면 script를 다운로드하게 된다. script다운, 실행이 완료된 후, 다시 HTML을 파싱한다. script의 위치와 속성(asnc, defer)에 따라, 다운로드 + 실행의 순서가 바뀌게 된다.
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="utf-8">
<title>Document</title>
<script src="test.js"></script>
</head>js가 무겁거나, js에 의존적인 경우 사용자들은 다운로드 + 실행되기를 기다려야 한다.
async
async는 스크립트를 만나는 순간, 다운로드만 하고, 다운로드가 완료되었을 때 실행하게 된다.
하지만, HTML Pharsing이 다 되지 않은 상태에서 실행되기 때문에, 선택자가 올바르게 동작하지 않을 수 있고, js의 크기에 따라 다운로드되어지는 순서에 따라 실행되어 개발자가 작성한 스크립트 순서대로 실행되지 않을 수 있음.
defer
defer는 HTML Pharsing의 경우에는, pharsing하는 동안 동시에, 다운로드를 미리 해두고 HTML Pharsing이 완료된 후, 바로 js를 실행하게 되어 가장 안정적이다.
use strict - 자바스크립트가 엄격해짐. 자바스크립트 엔진이 효율적으로 처리할 수 있게 됨.
클래스getter와 setter👌 getter와 setter를 조금 더 공부해야 할 것으로 보임.
publicField와 privateFieldpublicField는 외부에서 접근이 가능하지만, privateField는 접근이 불가능함
(브라우저 지원이 거의 안됨) - 바벨 사용해야 함.
static함수instanceOf
인스턴스 인지 확인하는 것 ( true || false Return)
오브젝트배열(Array)👌 shift, unshift가 pop과 push보다 느림. - 길이가 길면 길수록 shift, unshift는 느림. - 중간에 데이터를 넣는 것은 index를 이용하기 때문에, 빠름.
JSON - Javascript Object NotationHTTP : Hypertext transfer protocol
AJAX를 이용해서 데이터를 받아올 수 있음
Asynchronous Javascript and XML
XHR : XMLHttpRequest Object : 브라우저 API제공하는 오브젝트
👌 fetch() API : ie에서는 지원하지 않음.
서버와 데이터를 주고받을때에는 XML뿐만 아니라, 다른 것들도 주고 받을 수 있음.
JSON : key와 value로 이루어져 있음.
Object를 JSON으로 어떻게 변경할지에 대해서 공부
JSON을 Object로 어떻게 변환할지에 대해서 공부
Last updated