• html5

    html5 tag란. html은 tag로 브라우저가 해석할 수 있도록 해준다. 아마? 그래서 내용 형식으로 tag를 열고 닫고 한다. head head는 user에게 보이지 않는다. 브라우저에게 웹 사이트에 필요한 정보를 제공할 뿐. meta 브라우저를 위한 추가정보 정보. 그렇기 때문에 head 파트에 작성한다. <meta charset = "utf-8"> : utf8 encoding으로 문서를 작성 할 것이라는...


  • 정규 표현식

    정규표현식 정규 표현식이 뭔지는 대충 다 알 것이다. 문자열을 파싱하는 경우라던지, 규칙을 검사하는 경우 등 유용하게 쓰일 수 있다. 그런데 위와 같은 작업을 해야하는 경우. 선택의 기로에 선다. 정규식 표현법을 쓸 것인가.. 그냥 문자열을 가지고 if문 떡칠을 할 것인가.. 난 후자가 편했던거 같다. 오늘 블로그를 작성하면서 전자도 편해지도록.. 기대한다. 그냥...


  • call stack, event queue(task queue), event loop 그리고 micro task queue를 통한 비동기함수 작동 이해

    call stack, event queue(task queue), event loop 자바스크립트는 단일 스레드 환경으로 작동한다. 즉, call stack에 호출된 함수가 쌓이고, 이를 하나하나 실행한다는 뜻이다. 이의 문제점을 생각해보면, 만약 call stack에 처리하는데 오래걸리는 함수가 있다면, 이를 처리할 동안에 프로그램은 블라킹, 즉 멈춤것과 같은상태가 된다는 것이다. 이는 사용자와의 반응성이 더욱 중요시되는 웹 환경에서는 꽤...


  • 비동기를 위한 async await, promise 패턴

    async await, promise 패턴 바로 예시 코드를 보며 시작하자. async function asyncFunction() { try { const value = await promise; } catch (rejectedValue) { // … } } 함수 정의 앞에 async 키워드를 쓰면 함수 내부에서 await 키워드를 사용 할 수 있다. await 구문이 있으면, promise가 결정될 때 까지 대기를...


  • bind(this)

    func.bind(thisArg) 함수와 객체를 묶어준다. 객체로부터 메소드를 추출한 뒤 나중에 그 함수의 원 객체를 그 함수의 this로서 사용하기를 기대 할 때, 보통 원 객체는 손실된다.(콜백 함수 내부) this.x = 9; var module = { x: 81, getX: function() { return this.x; } }; module.getX(); // 81 var retrieveX = module.getX; retrieveX();...