반응형
[ js ] Immutability(변경불가성)
Frontend/js2024. 5. 9. 19:58[ js ] Immutability(변경불가성)

immutability ( 변경불가성 ) 은 객체가 생성된 이후 그 상태를 변경할 수 없는 디자인 패턴을 의미# immutable value vs mutable valuejavascript의 원시 타입 ( primitive data type ) 은 변경 불가능한 값 ( immutable value )BooleannullundefinedNumberStringSymbol원시 타입 제외 모든 값은 객체 (Object) 타입이며 변경 가능한 값 ( mutable value )let str = 'hi';str = 'bye'; 식별자 str은 메모리에 생성된 문자열 'hi'의 메모리 주소를 가리키게 되고 두번째 구문이 실행되면 생성된 문자열 'hi'을 수정하는 것이 아니라 새로운 문자열 'bye'를 메모리에 생성하..

[ js ] ES5 vs ES6 차이
Frontend/js2024. 4. 22. 18:49[ js ] ES5 vs ES6 차이

ES5 vs ES6 # 변수 선언 방식의 차이▶ ES5 : var 만 존재 재할당과 재선언에 자유로움 호이스팅 문제 ★ 호이스팅 : 코드가 실행되기 전 변수선언 | 함수선언이 해당 유효범위의 최상단으로 끌어 올려지는 것과 같은 현상 ▶ ES6 : let , const 추가 호이스팅 문제를 해결하기 위해 let , const 추가 let : 선언된 변수는 동일한 이름으로 선언 x , 재할당은 o const : 재선언 , 재할당 x   변수스코프재할당재선언var함수 스코프 가능가능let블록 스코프가능불가능const블록 스코프불가능불가능 // var console.log(americano);var americano = 'Americano is the most delicious coffee';-> output ..

[ js ] symbol
Frontend/js2023. 10. 2. 20:08[ js ] symbol

Symbol 원시 값을 반환하는 내장 객체이며 , 객체에 속성을 추가할 경우 혹은 고유한 키를 부여하여 다른 코드와 충돌하지 않게 하기 위하여 사용됩니다.심볼 생성시 고유한 Symbol 생성 const sym1 = Symbol();const sym2 = Symbol("bug");const sym3 = Symbol("bug");위 코드는 세개의 심볼을 생성하지만 , 심볼 호출 시 새로운 심볼을 생성합니다. Symbol("bug") === Symbol("bug"); // false그러므로 위 코드와 같이 엄격한 비교 연산자로 비교시 "false"의 결과값을 리턴하는 것을 확인할 수 있습니다. const sym = new Symbol(); // TypeError또한 , 새로운 심볼 값을 만들때 명시적으로 래퍼..

반응형
image