분류 전체보기 97

[JavaScript] 함수 선언문과 함수 표현식의 차이 (feat: 호이스팅이 뭔데?)

코어 자바스크립트 책의 실행 컨텍스트 파트를 읽다가 함수 선언문과 함수 표현식의 차이를 깨우치게 되었다. 이 책은 내가 개발을 처음 시작하고 얼마 안 되었을 때 처음 읽었고, 작년 말쯤 또 읽고, 이번에 3번째 읽는 것이다. 처음 읽을 때는 한 페이지 읽는 데 한참을 붙들고 있었는데, 그래도 여러번 보니 예전보단 수월하게 읽혀서 그동안 스스로가 성장한 것 같아 뿌듯했다😊 인프런에서 해당 책의 내용을 다룬 정재남님의 강의도 2번 보았다(2회차 진행 중이다). 실행 컨텍스트가 면접 단골 질문인 것도, 자바스크립트의 핵심 개념 중 하나인 것도 알고는 있지만, 내게는 각종 어쩌구 environment 라는 단어가 잔뜩 나오는 어려운 내용으로 각인되어 있었다. 대강의 흐름은 알았지만 말로 설명하기 어려워서 이번엔..

개발/JavaScript 2023.02.25

[JavaScript] 코어 자바스크립트 - 1. 데이터 타입

1. 자바스크립트의 타입은 어떤 것이 있을까요? 기본형(Primitive Type), 참조형(Reference Type) 2. 기본형과 참조형에는 어떤 타입이 있을까요? 기본형(Primitive Type) : string, number, boolean, undefined, null, symbol 참조형(Reference Type) : Object - Array, Function, Date, RegExp, Map/WeakMap, Set/WeakSet 3. 참조형이라고 부르는 이유는 뭘까요? 데이터 영역에 데이터의 주솟값을 연결하는 방식으로 데이터를 저장하기 때문 참조형은 내부 프로퍼티 값을 변경하면 연결된 데이터 영역이 바뀌게 될 뿐, 참조형 자체의 데이터가 변하는 것이 아님 4. 기본형과 참조형을 구분한..

개발/JavaScript 2023.02.18

[원티드 프리온보딩 챌린지 2월] Week 2-2 TypeScript's Type System - 강의 후기

Week 2-2 TypeScript's Type System Type System, Duck Typing, Structural Typing 드디어 2월 프리온보딩 챌린지 타입스크립트 강의의 마지막 시간이 왔다. 멘토님이 차분한 어조로 설명을 너무 잘 해주셔서 배운 점이 많았다. 타입스크립트에 대한 접근도 그렇고, 공부 방법 가이드, 수업의 마지막 시간마다 진행된 취업 관련 Q&A도 모두 마음에 들었다. 매번 강의를 들을 때마다 기록을 남기려고 집중하다 보니 수업 내용이 머리에도 더 각인이 되었다. 마지막 시간이라 이번 챌린지에 참여한 분들과 스터디를 모집하거나 링크드인 주소를 공유할 수 있는 기회도 마련해 주셨다. 1. 구조적 타입과 명목적 타입 구조적 타입 (Structural Type) 객체가 어떤 ..

[원티드 프리온보딩 챌린지 2월] Week 2-1 Safety Application for TypeScript - 강의 후기

Week 2-1 Safety Application for TypeScript Type Guard 강의를 들으면서 내가 프로젝트를 진행할 때 사용하던 것들이 이런 명칭을 가지고 있구나 하는 것을 깨닫기도 했다. 나도 모르게 익혀서 사용하는 것일 수도 있지만, 제대로 된 이해 없이 무작정 코드를 치고 있던 것은 아닌가 되돌아보게 되었다. 이번 강의는 용어들이 어려워서 지금까지 3번 진행된 TS 강의 중 가장 난이도가 높게 느껴졌다. 과제 또한 이번에 다 못하더라도 언젠가 꼭 해봐야겠다. 1. 동적 타입과 정적 타입 타입 체커가 컴파일 타임에 수행되는지, 런타임에 수행되는지 여부 자바스크립트는 인터프리터를 기반으로 한 동적 언어이다. 타입스크립트는 컴파일 언어이다. 컴파일은 ts파일을 js파일로 변환하는 것이..

[원티드 프리온보딩 챌린지 2월] Week 1-2 Interface for TypeScript - 강의 후기

Week 1-2 Interface for TypeScript Interface, Modeling 1-2주차 시간은 타입스크립트를 사용하며 항상 의문을 가졌던 interface와 type alias의 차이에 대해 다뤄보았다. 나는 interface를 주로 사용하지만 그것을 왜 사용하는지에 대해서는 아직 설명하기 어렵다. 항상 그렇듯 '남들이 다 쓰길래'라는 답변은 도움되지 않는다. 자신만의 철학과 논리를 가지고 어떤 것을 왜 사용하는지 고민하는 시간이 꼭 필요하다고 하셨다. 1. 지난 시간 복습, TypeScript 공부 방법 TS가 JS의 슈퍼셋인것만은 아니다. JS에 있는 것이 모두 TS에 있는 건 아니다. 타입 에러시 타입을 바로 고치면 안되는 이유 타입스크립트는 내부 코드가 잘못됐을 때 오류를 알려..