본문 바로가기

[자바스크립트] 실행 컨텍스트란? (feat 코어 자바스크립트) 들어가며 많은 기업들이 타입스크립트와 nest.js를 활용해서 서버 개발을 하곤 합니다. 취업을 하려면, 타입스크립트와 nest.js를 공부해서 실무를 익히는 것이 중요할 것입니다. 하지만 아직 자바스크립트의 기초도 없는 상태에서 타입스크립트와 nest.js를 공부하는 것이 맞을까 하는 생각이 들었습니다. 빠르게 기술변화를 적응하고, 러닝 커브를 줄이기 위해 빠르게 공부해야 하는 것도 맞겠지만, 그전에 언어의 기반이 되는 자바스크립트부터 제대로 알아야 하지 않을까 하는 생각이 들었습니다. 이 기회에 자바스크립트의 기본에 대해 정리해보고자 합니다. 실행 컨텍스트란? 실행 컨텍스트는 실행할 코드에 제공할 환경 정보들을 모아놓은 객체입니다. 실행 컨텍스트는 동일한 환경에 있는 코드들을 실행할 때 필요한 환경 ..
[자바스크립트] undefined와 null (feat 코어 자바스크립트) 들어가며 많은 기업들이 타입스크립트와 nest.js를 활용해서 서버 개발을 하곤 합니다. 취업을 하려면, 타입스크립트와 nest.js를 공부해서 실무를 익히는 것이 중요할 것입니다. 하지만 아직 자바스크립트의 기초도 없는 상태에서 타입스크립트와 nest.js를 공부하는 것이 맞을까 하는 생각이 들었습니다. 빠르게 기술변화를 적응하고, 러닝 커브를 줄이기 위해 빠르게 공부해야 하는 것도 맞겠지만, 그전에 언어의 기반이 되는 자바스크립트부터 제대로 알아야 하지 않을까 하는 생각이 들었습니다. 이 기회에 자바스크립트의 기본에 대해 정리해보고자 합니다. Undefined 자바스크립트의 기본형 데이터에는 undefined, null가 있습니다. undefined과 Null은 의미는 같은 것 같지만 사용하는 목적 ..
[자바스크립트] 불변 객체 (feat 코어 자바스크립트) 들어가며 많은 기업들이 타입스크립트와 nest.js를 활용해서 서버 개발을 하곤 합니다. 취업을 하려면, 타입스크립트와 nest.js를 공부해서 실무를 익히는 것이 중요할 것입니다. 하지만 아직 자바스크립트의 기초도 없는 상태에서 타입스크립트와 nest.js를 공부하는 것이 맞을까 하는 생각이 들었습니다. 빠르게 기술변화를 적응하고, 러닝 커브를 줄이기 위해 빠르게 공부해야 하는 것도 맞겠지만, 그전에 언어의 기반이 되는 자바스크립트부터 제대로 알아야 하지 않을까 하는 생각이 들었습니다. 이 기회에 자바스크립트의 기본에 대해 정리해보고자 합니다. 불변 객체를 만드는 간단한 방법 참조형 데이터는 기본형 데이터와 마찬가지로 데이터 자체를 변경하려고 한다면 데이터는 변하지 않습니다. 하지만 참조형 데이터가 가..
[자바스크립트] 기본형 데이터와 참조형 데이터 (feat 코어 자바스크립트) 들어가며 많은 기업들이 타입스크립트와 nest.js를 활용해서 서버 개발을 하곤 합니다. 취업을 하려면, 타입스크립트와 nest.js를 공부해서 실무를 익히는 것이 중요할 것입니다. 하지만 아직 자바스크립트의 기초도 없는 상태에서 타입스크립트와 nest.js를 공부하는 것이 맞을까 하는 생각이 들었습니다. 빠르게 기술변화를 적응하고, 러닝 커브를 줄이기 위해 빠르게 공부해야 하는 것도 맞겠지만, 그전에 언어의 기반이 되는 자바스크립트부터 제대로 알아야 하지 않을까 하는 생각이 들었습니다. 이 기회에 자바스크립트의 기본에 대해 정리해보고자 합니다. 불변값 기본형 데이터의 숫자, 문자열, boolean, null, undefined, symbol은 모두 불변값입니다. 그중 숫자와 문자열을 예로 들어 불변성의..
[자바스크립트] parseInt와 Number의 차이 들어가며 알고리즘을 공부하면서, 가끔 parseInt를 써야 하는 경우와 Number를 써야 하는 경우는 언제인지 궁금했습니다. 이번 기회에 parseInt와 Number의 차이에 대해 정리해보면서, 언제 각각의 메서드를 사용해야 하는지 알 수 있었으면 좋겠습니다. Number(str) Number 메서드는 문자열을 인자로 받으면 해당 문자열을 숫자로 바꿔줍니다. 아래의 코드는 '1234'라는 문자열을 1234라는 숫자로 형 변환하여 변수 num에 담는 코드입니다. var num = Number('1234'); // 1234 하지만 아래처럼 문자열이 숫자가 아닌 경우 num에는 NaN이 저장됩니다. var num = Number('1000원'); // NaN 만약 소수점은 어떻게 표시가 될까요? 이 경우..
[자바스크립트] 변수 선언과 데이터 할당 (feat 코어 자바스크립트) 들어가며 많은 기업들이 타입스크립트와 nest.js를 활용해서 서버 개발을 하곤 합니다. 취업을 하려면, 타입스크립트와 nest.js를 공부해서 실무를 익히는 것이 중요할 것입니다. 하지만 아직 자바스크립트의 기초도 없는 상태에서 타입스크립트와 nest.js를 공부하는 것이 맞을까 하는 생각이 들었습니다. 빠르게 기술변화를 적응하고, 러닝 커브를 줄이기 위해 빠르게 공부해야 하는 것도 맞겠지만, 그전에 언어의 기반이 되는 자바스크립트부터 제대로 알아야 하지 않을까 하는 생각이 들었습니다. 이 기회에 자바스크립트의 기본에 대해 정리해보고자 합니다. 변수 선언과 데이터 할당 변수를 선언할 때, 메모리 영역에서 어떤 작업을 수행하는지 살펴보겠습니다. var a; 주소 ... 1002 1003 1004 1005..
[자바스크립트] 데이터 타입 종류와 배경지식 (feat 코어 자바스크립트) 들어가며 많은 기업들이 타입스크립트와 nest.js를 활용해서 서버 개발을 하곤 합니다. 취업을 하려면, 타입스크립트와 nest.js를 공부해서 실무를 익히는 것이 중요할 것입니다. 하지만 아직 자바스크립트의 기초도 없는 상태에서 타입스크립트와 nest.js를 공부하는 것이 맞을까 하는 생각이 들었습니다. 빠르게 기술변화를 적응하고, 러닝 커브를 줄이기 위해 빠르게 공부해야 하는 것도 맞겠지만, 그전에 언어의 기반이 되는 자바스크립트부터 제대로 알아야 하지 않을까 하는 생각이 들었습니다. 이 기회에 자바스크립트의 기본에 대해 정리해보고자 합니다. 데이터 타입의 종류 자바스크립트의 데이터 타입에는 크게 두 가지가 있습니다. 바로 기본형과 참조형입니다. 기본형에는 숫자, 문자열, 불리언, null, unde..
[자바스크립트] 클로저에 대해 알아보자 들어가며 알고리즘 문제를 하나씩 풀면서, 클로저란 무엇인지 알아보고 싶었습니다. 다른 글이나 설명들을 보면 상당히 복잡한 경우가 있었는데, 이걸 어떻게 하면 쉽게 설명할 수 있을까 고민해보고 싶었습니다. 이번 기회에 이 부분을 제대로 정리해봐야겠다고 생각했습니다. 변수의 유효범위 클로저를 이해하려면 자바스크립트가 어떻게 변수의 유효범위를 지정하는지 먼저 이해해야 합니다. { let message = "Hello"; console.log(message); } console.log(message); 위의 경우 스코프 안에서는 변수를 콘솔 값에 출력할 수 있었지만, 스코프 밖에서는 스코프 안에 있는 변수를 콘솔 값에 출력할 수 없었습니다. 즉 자바스크립트는 함수 내부에서 함수 외부에 있는 변수에 접근할 수 있..
[자바스크립트] slice와 splice의 차이점에 대해 알아보자 들어가며 알고리즘 문제를 하나씩 풀면서, slice와 splice의 차이점에 대해 문득 궁금해졌습니다. 비슷한 기능을 수행하는 것 같은데, 어떤 차이점이 있고, 어느 상황에서 메서드를 사용해야 하는지 잘 알지 못했습니다. 이번 기회에 이 부분을 제대로 정리해봐야겠다고 생각했습니다. Array.prototype.slice() slice() 메서드는 어떤 배열의 start부터 end 전까지의 복사본을 새로운 배열 객체로 반환합니다. 즉, 원본 배열은 수정되지 않습니다. 위의 설명이 좀 어려울 수 있습니다. 이를 다르게 해석하면, slice(start, end) 메서드는 start와 end 인자를 받습니다. start는 추출 시작점에 대한 인덱스를 말하며, end는 추출을 종료할 인덱스를 말합니다. 메서드의 ..