[Code States SEB FE 44] 블로깅 챌린지 0220

내가해냄·2023년 2월 20일
0

부트캠프

목록 보기
6/10

Unit5 변수와 타입

드디어 JS와 함께 고생길 시작!
그래도 기초적인 문법은 이미 알고 있었기 때문에 chapter를 진행한 후 궁금한 내용들에 대해 추가로 공부하려고 노력하였다.

변수

변수 선언과 할당의 차이
변수 선언 : 변수를 정의하고 메모리 공간에 할당하는 것. 변수 이름을 통해 접근이 가능하다.
변수 할당 : 선언된 변수에 값을 대입하는 것.
falsy
false로 여겨지는 값 false, 0, ('',"",``), null, undefined, NaN

문자열

문자열 합치기 방법
문자열을 합칠 때 사용하는 메서드와 연산자
concat() : 성능이 가장 안좋음. 문자열이 길어질 수록 성능 저하

+ 연산자 : 내부 문자열 버퍼가 있기 때문에 concat보다 빠름. 피연산자를 문자열로 반환 후 이어붙여서 새로운 문자열을 만듬. 남발하면 성능저하

join() : 내부 문자열 버퍼가 있음. +연산자보다 빠름. 배열의 요소들을 문자열로 반환 후 연결하여 하나의 문자열로 만듬. 여러 개의 문자열을 연결할 때 효율적임

템플릿 리터럴 : 백틱을 사용함. `${변수}`와 같이 사용가능.
indexOf와 includes의 차이
indexOf - 요소의 위치 반환
return 요소가 있을 경우 index 없을 경우 -1
입력값을 문자열로 반환하여 검색함. 따라서 숫자를 입력하더라고 해당 숫자가 문자로 있을 경우 있다고 판단. ex) '123'.indexof(1) //0

includes - 포함 여부 반환
타입 다르면 무조건 false

가비지컬렉터

가비지컬렉터란?
자동 메모리 관리 기능으로 개발자가 수동으로 매모리 공간을 할당하거나 해제할 필요없도록 도움을 준다.
가비지컬렉터 종류
참조 카운트 방식 : 객체나 변수가 참조될 때 참조 카운트 증가, 해제될 때 참조 카운트 감소, 카운트가 0이면 메모리에서 해당 변수나 객체 해제
도달 가능성 방식 : 시작점에서 도달할 수 없는 객체나 변수 메모리 해제
가비지컬렉터 주의점
가비지컬렉터가 동작할 때 성능 저하가 있을 수 있다.
가비지컬렉터 대상이 아닌 것들
1. 전역 변수
2. 전역 객체 프로퍼티 값
3. 순환 참조 : 두 개이상의 객체가 서로를 참조하는 것

+)

toFixed()
고정 소수점 표기법 defalt: 0
프로퍼티란?
객체 내부에 있는 속성으로 이름과 값을 가짐. "."이나 "[]" 로 프로퍼티를 읽고 쓸 수 있음.
프로퍼티의 이름은 객체 내부에서 유일해야함.
변수나 계산식의 결과를 프로퍼티 이름으로 사용 가능.
객체에서 동적으로 프로퍼티 이름 생성 가능.

오늘 pair와 네비게이터, 드라이버가 되어서 연습문제를 풀었다. 페어와 이야기하면서 문제를 푸니 재미있게 풀 수 있었다. livesection에서 풀이를 들으면서 코드를 줄일 수 있는 문제들이 보이기도 했다. 문제를 조금만 더 깊게 해석했다면 더 좋은 코드를 짤 수 있었을 텐데 아쉽다. 앞으로는 의사코드를 쓰면서 좋은 코드를 짤 수 있도록 노력해야겠다.

profile
노션으로 갈아탐

0개의 댓글