Custom Element클래스에서 설명하는 사용자 지정 HTML 요소를 자체 방법과 속성, 이벤트 등으로 만들 수 있습니다. 사용자 지정 요소가 정의되면 내장된 HTML 요소와 동등하게 사용할 수 있습니다.HTML Dictionary은 풍부하지만 무한하지는 않기 때문에 이 선택이 좋습니다.HTML Dictionary에는 easy-tabs, sliding-carousel, beautiful-upload등이 없습니다… 우리가 필요로 할 다른 tag들에 대해 생각해봅시다.그를 특별 클래스로 정의한 다음 항상 HTML의 일부인 것처럼 사용할 수 있습니다.두 가지 종류의 사용자 지정 요소가 있습니다:Autonomous custom elements자율 사용자 지정 요소 - 추상적인 HTMLElement 클래스를 ..

1. 비동기(async) 통신의 필요성동기(Sync) 통신에서는 모든 데이터를 한 번에 전송하고 처리해야 하지만, 비동기(Async) 통신은 필요한 데이터만을 독립적으로 처리할 수 있어, 효율적으로 데이터를 변경하고 업데이트할 수 있다. 비동기 통신이 필요한 경우는 아래와 같다.Web API* 요청 (서버에 데이터를 받아올 때)]파일 읽기 (서버에 파일을 읽어와야 할 때)파일 쓰기 (클라이언트 단에서 데이터를 생성할 때 )파일 수정 (클라이언트 단에서 데이터를 수정할 때 )파일 제거 (클라이언트 단에서 데이터를 제거할 때)암호화 / 복호화예약 작업 (특정 날짜와 시간에 작업을 수행할 때)API란 Application Programming Interface의 약자로, 두 소프트웨어 시스템이 서로 상호작용할..

클로저(closure)란?JavaScript의 매우 강력한 특성으로, 독립적인 변수를 참조하는 함수클로저의 필요성 JS는 함수 내부에서 함수 외부에 있는 변수에 접근할 수 있다. 만약에 함수 내부에서 전역 외부 변수를 참조했다면, 전역 변수는 언제든지 누구나 접근할 수 있고 변경할 수 있기 때문에, 많은 부작용을 유발해 오류의 원인이 될 수 있다.따라서 함수 내에서 상태를 유지하는 변수를 사용할 필요성이 있다.다음의 계산기 함수처럼 말이다. function makeCounter() { let count = 0; return function() { return count++; };}let counter = makeCounter();alert( counter() ); // 0alert( count..

호이스팅이란?JavaScript 호이스팅은 인터프리터가 코드를 실행하기 전에 함수, 변수, 클래스 또는 임포트(import)의 선언문을 해당 범위의 맨 위로 끌어올리는(hoisted) 현상ex )function sayHi() { phrase = "Hello"; console.log(phrase); var phrase;}sayHi(); //Hellovar phrase가 위로 이동한 것(아래 코드)처럼 출력된다.function sayHi() { var phrase; phrase = "Hello"; console.log(phrase);}sayHi(); //Hello왜 호이스팅은 일어나는가- 역사적 이유브랜든 아이크(JS의 창시자)는 var 호이스팅이 의도치 않은 것이라는 점을 명확히 하는 후속 트윗..