이번주(1월 16일 ~ 22일) 너무 빨리 지나갔다. 밤을 새는 해커톤부터
자바스크립트 언어공부까지...

이번주 Weekend, I Learend

1. 해커톤으로 협업을 경험하면서 git conflict가 났을때, VScode 내부에서 수정하는 것, 그리고 원인을 해결하는 방법에 대해 알게 되었다.

2. JWT라는 라는 것을 통해 로그인을 구현시켰을 때, 회원가입 후 로그인을 하게되면, 서버에서 토큰을 발급하고 그리고 사용자에 쿠키로 저장된다.

3. 브라우저가 랜더링 될 때, HTML과 CSS를 파싱하여 DOM과 CSSOM을 만들고 그것으로 랜더트리를 구축 후에 layout이 만들어진다.

4. 자바스크립트의 함수와 메서드의 차이점이다. 객체라는 키(key)와 값(value)로 이루어지 곳안에 존재하는 것은 메서드이다. 함수는 메서드와 다르게 특정 작업을 수행하기 위해 만들진 것이다.

5. 얕은 복사는 참조값(Object)을 복사 할 때 복사된 객체가 똑같은 참조를 가리키고 있다. 그래서 객체를 수정하면 기존 변수에도 값이 같이 수정된다. 그러나 원시값에서 복사를 할 경우, 새로운 메모리 공간을 할당하기 때문에 다른 참조를 가리키고 있다. 그래서 수정해도 기존 원시값은 변하지 않는다.

6. 불변성이란 메모리의 데이터 영역이 바뀌지 않고 새롭게 생기면 그것은 불변하다라고 한다. 그중에 원시값은 불변하다. 가변성은 참조값을 복사하면 메모리의 데이터 영역이 바뀌게 된다. 이것을 가변성이라고 한다.

7. 스택 : 후입선출 / 큐 : 선입선출, var로 변수를 선언하였을때, 위 아래로 console을 찍으면 undefined라고 나온다. 그 이유는 호이스팅의 영향을 받았기 때문이다. var는 선언과 동시에 초기화가 일어나고 let,const는 선언만 되고 초기화는 일어나지 않는다.
변수와 같은 정보는 실행 컨텍스트 어딘가에 저장하게 된다. 그 공간을 환경 레코드(Environment Record)라고 한다. Outer는 외부 환경 참조(Environment Reference) 바깥 Lexical Environment를 가르킨다. 자바스크립트 call stack에 차곡차곡 쌓이고 나서 먼저 맨 위에서 부터 정보를 찾게 된다. call stack에 있는 정보를 차례로 아래까지 다 찾다가 없으면 자바스크립트 엔진은 Global Execution Context(전역 실행 컨텍스트)의 렉시컬 환경까지 와서 찾게 된다.

마지막으로

다음주(1월 23일 ~ 29일)부터는 또 다른 바쁜주의 시작이다. 설 연휴가 있어 다행히 보충 공부할 시간이 많다. 이번주 목표였던 스파르타톤에서 원하는 결과물 만들기는 작게 보면 성공이지만, 크게 보면 실패다. 내가 맡은 로그인 구현은 다 성공했지만, 팀이 원하는 것을 다 구현하기에는 시간이 부족했기 때문이다.
다음주 나의 목표는 알고리즘(프로그래머스) 문제를 하루에 2문제씩 풀어보는 것이다.
차근차근 하나하나씩 해나가면 모든지 할 수 있을 것이다.

profile
평범한 삶을 위하여

0개의 댓글