자바스크립트는 웹페이지에 생동감을 불어넣기 위해 만들어진 언어자바스크립트로 작성된 문서는 script라고 불리고, 웹페이지를 불러올 때 그 웹페이지의 HTML문서를 <a href="자바스크립트는 브라우저를 위해 만들어진 언어인것을 기억합시다. 브라우저를 위한 언이
컴퓨터는 모든 데이터를 0또는 1만으로 표현합니다. 0또는 1만 표현할 수 있는 하나의 메모리 조각을 비트(bit)라고 합니다. 메모리는 무수히 많은 비트들로 구성돼 있는데, 각 비트는 고유한 식별자를 통해 위치를 확인할 수 있습니다. 하지만 식별자를 통해 해당 비트가
ES5, ES6 이란 단어를 보신적 있으신가요. ES란 ECMAScript로 쉽게말하면 자바스크립트의 버전이라고 생각하시면 되겠습니다.자바스크립트는 꽤 오랫동안 화환성 이슈 없이 발전해왔습니다. 기존의 기능을 변경하지 않으면서 새로운 기능이 추가되었다고 합니다. 덕분에
자바스크립트에서 함수는 일급객체입니다. 일급객체의 가장 큰 특성은 객체가 값으로써 변수에 할당될 수 있다는 것 입니다. 함수 표현식 자바스크립트의 일급객체 특성을 이용해서 이런 표현이 가능하겠습니다 이렇게 함수를 생성하고 변수에 값을 할당하는 것처럼 함수가 변수
자바스크립트는 끊임없이 진화하는 언어입니다. ES5, ES6, ...등등 새로운 버전이 등장하면서 새로운 메서드가 등장하거나 기존의 메서드를 수정되기도 한다고 엄격 모드에서 확인했었습니다. 바벨은 트랜스파일러로, 모던 자바스크립트 코드를 구 표준을 준수하는 코드로 바꿔
객체와 원시 타입의 근본적인 차이 중 하나는 객체는 참조에 의해(by reference)저장되고 복사되는 반면 원시 타입은은 값에 의해(by value)저장되고 복사된다는 것 입니다. message라는 변수에는 원시 타입의 문자열 "Hello"가 들어가 있고, 그 값을
자바스크립트를 배우면서 "this"에 대해 많이 어려워하고 아직도 잘 모르고있는것 같습니다. 우리는 이 "this"를 객체의 메서드에서 자주 볼 수 있습니다.메서드 내부에서 "this"키워드를 사용하면 객체에 접근할 수 있습니다.이때 this는 user.sayHi();
반복 가능한(iterable, 이터러블) 객체는 배열을 일반화한 객체입니다. 이터러블 이라는 개념을 사용하면 어떤 객체에든 for..of반복문을 사용할 수 있습니다.배열은 대표적인 이터러블입니다. 배열 외에도 다수의 내장 객체가 반복 가능하다고 합니다. 문자열 역시 이
함수는 어디에도 쓸 수 있다자바스크립트는 함수 지향 언어입니다. 함수를 동적으로 생성할 수 있고, 생성한 함수를 다른 함수에 인수로 넘길 수 있으며, 생성된 곳이 아닌 곳에서 함수를 호출할 수 도 있기 때문입니다. 클로저는 간단하게 함수 내부에서 함수 외부에 있는 변수
최근에 토스 앱 논란관련 이슈가 있었습니다.간단하게 일반 사용자들은 누구나 서비스를 이용하기 위해 API호출을 몇번을 하던 간에 무료로 이용이 가능하지만 토스같은 기업 사용자(B2B)가 다른 기업에서 만들어 놓은 API를 호출할 때는 이용료를 납부해서 사용하도록 되어있
setTimeout과 setInterval는 기본적으로 무언가를 일정 간격을 두고 실행하도록 만들어주는 스케줄링 메서드 입니다.두 녀석 다 반환값으로 Timer Identifier를 반환해서 clearTimeout(timerId), clearInterval(timerI
실행 컨텍스트(Execution Context)는 실행할 코드에 제공할 환경 정보들을 모아놓은 객체로, 자바스크립트의 동적 언어로서의 성격을 가장 잘 파악할 수 있는 개념입니다. 자바스크립트는 어떤 실행 컨텍스트가 활성화되는 시점에 선언된 변수를 위로 끌어올리고(Hoi
자바스크립트에서 객체가 메모리상에 저장되는 방법은 여기서 확인할 수 있다. 간단하게 설명하면, 간단한 변수의 경우는 데이터 영역에 일정 공간을 할당 받아서 저장되고, 객체의 경우는 변수 영역에 key/value 형태로 저장되는데 이 때 value는 객체의 value가