자바스크립트

    [JS] 메시지 큐와 이벤트 루프 (Message Queue and Event Loop)

    [JS] 메시지 큐와 이벤트 루프 (Message Queue and Event Loop)

    자바스크립트의 특징 자바스크립트는 기본적으로 싱글 쓰레드 기반 언어이기 때문에 호출 스택이 하나이고, 한번에 한 가지 일만 처리할 수 있습니다. 자바스크립트를 작동시키는 엔진은 메모리힙(Memory Heap)과 콜스택(CallStack)을 동작시킵니다. 하지만 자바스크립트로 AJAX처리나 setTimeOut, addEventListener 등 함수를 이용해 비동기적 작업 처리가 가능합니다. 이런 작업이 가능한 이유는 자바스크립트 런타임이 메모리힙과 스택으로만 이뤄진 것이 아니라 브라우저에서 제공하는 Web API와 Event Queue와 Event Loop라는 것이 존재하기 때문입니다. 메시지 큐 메시지 큐는 자료구조 큐(Queue) 기반으로 구서오디어 있습니다. LIFO(Last in First Out..

    [JS] 변수와 함수 정의

    [JS] 변수와 함수 정의

    변수 변수는 상황에 따라 변할 수 있는 값 let myname; // 선언 myname = 'Hazel'; // 할당 표현식에 변수를 사용할 수 있으며, 결과물을 다시 변수로 담을 수 있다. 타입 숫자, 문자열, Boolean, 배열, 객체, 함수, undefined 특정값의 타입을 확인할 때 typeof 값; 실습 예시 let string = '1'; console.log(typeof string) // --- string let number = 1; console.log(typeof number) // --- number 함수 함수 선언식 function getSquareArea(base, height) { let SquareArea = base * height; return SquareArea } ..

    [JS] 참고자료 모음

    [JS] 참고자료 모음

    요즘 freecodecamp에서 자바스크립트 파트를 계속 공부하고 있다. 정말 주옥같은 코딩 수업 자료다.. 복습용 강추. 빠르게 진도를 뽑고 싶기 때문에 일일히 노트를 정리해 올리긴 시간이 살짝 아깝고, 좋은 자료를 찾으면 여기에 조금씩 업데이트 해보려고 한다. 자바스크립트 공부하면서 어려웠던 부분만 쏙쏙 뽑아서 잘 정리해두신 블로그 글 - https://velog.io/@bathingape/series/JavaScript

    [JS] 정규식 패턴 [xyz]과 정규식 메소드 match

    [JS] 정규식 패턴 [xyz]과 정규식 메소드 match

    Javascript Regular Expression 정규식 패턴 [xyz] 문자셋(Character set) 이다. 이 패턴은 괄호 안의 문자(이스케이프 시퀀스 포함)를 모두 대응한다. 점(.)이나 별표(*)같은 특수 문자는 문자셋 내부에서는 특수 문자가 아니다. 따라서 따로 이스케이프시킬 필요가 없다. 하이픈을 이용해 문자 범위를 지정할 수도 있다. 예를 들어 [a-d]는 패턴 [abcd]와 똑같이 동작한다. 패턴 /[a-z.]+/ 와 /[\w.]+/ 는 "test.i.ng" 전체 문자열이 일치한다. + 앞의 표현식이 1회 이상 연속으로 반복되는 부분과 대응한다. {1,} 와 같은 의미. 예를 들어, /a+/ 는 "candy"의 'a'에 대응되고 "caaaaaaandy" 의 모든 'a'들에 대응되지만..