[JS] 기본형 데이터와 참조형 데이터
·
개발공부/Javascript
기본형 데이터 메모리 할당 기본형은 불변성 특징을 가진다. 한번 생성된 데이터는 변경될 수 없다. 기본형 - string, number, boolean, null, undefined, symbol, BigInt 변수에 값을 직접 저장하고 데이터 복사할 때는 값 자체가 복사된다. cf. 참조형 메모리에 저장될 때 참조를 통해 접근하며, 데이터 타입은 크기가 가변적이고 불변적이지 않다. 참조형 - object, array, function, RegExp 메모리에 객체가 저장되고 변수는 그 메모리 주소를 참조한다. 복사를 할 때에는 메모리 주소 즉, 참조 값이 복사가 된다. 따라서 참조형 데이터가 복사된 변수들이 동일한 메모리 주소를 가리키게 함으로써 한 변수에서 객체를 수정하면 다른 변수에도 영향을 미친다...
[JS] JavaScript 프로젝트에서 스타일 설정 방법 3가지 코드 예시
·
개발공부/Javascript
1. 인라인 스타일 app.style.background = '#000'; app.style.setProperty('background', '#f00'); cssText는 기존에 설정된 inline이 날아감 app.style.cssText = ` background: #fff; max-width: 500px; width: 100%; margin: 100px auto; padding: 20px; border-radius: 6px; box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.1); `; app.style.removeProperty('box-shadow'); 2. 스타일 시트 document.styleSheets[0].insertRule(` #app { background: #f..
[JS] 실행 컨텍스트
·
개발공부/Javascript
실행 컨텍스트란? 자바스크립트 엔진이 코드를 실행하는데 사용하는 내부 매커니즘이다. 이 컨텍스트는 실행되는 코드에 대한 환경 정보를 포함한다. 변수, 함수 선언, this의 값 등의 스코프 값 정보가 포함된다. 실행 컨텍스트가 활성화 되는 시점에 호이스팅, 외부환경, this값 등을 설정한다. 전역 실행 컨텍스트 js 코드가 실행될 때 생성되는 가장 기본적인 실행 컨텍스트로 전역 함수와 변수를 포함한다. 글로벌 실행 컨텍스트에 대한 예시 코드이다. let globalLet = 'Hello World'; // 전역 변수 function globalFunction() { // 전역 함 return 'Hello Global Function'; } 객체 형식으로 글로벌 실행 컨텍스트 구조를 표현해 보면 다음과 ..
[JS] 클로저
·
개발공부/Javascript
클로저는? 정의) A closure is the combination of a function bundled together (enclosed) with references to its surrouding state (the lexical environment). 함수가 선언될 당시의 Lexical Environment의 상호 관계에 따른 현상. 비공개 변수를 가질 수 있는 환경에 있는 함수가 클로저이다. 외부 변수를 기억하고 이 외부 변수에 접근할 수 있는 함수이다. 클로저는 열린 변수식을 닫힌 변수식으로 변환해준다. 외부 스코프의 변수에 접근해서 그 변수가 가비지 컬렉션의 대상에서 제외 되도록 한다. 즉, 함수의 실행 컨텍스트가 종료되어도 해당 변수를 계속 참조할 수 있게 해준다. 클로저는 내부 함수..