[WIL] 항해99 2주차

seungbox·2023년 2월 19일

WIL

목록 보기
2/6

[2주차] 프로그래밍 기초

  1. 함수와 객체
  • JS 함수와 객체
    함수는 특정 코드를 하나의 명령으로 실행 할 수 있게 해주는 기능이다.
    함수를 만들 때는 function 키워드를 사용하며, 함수에서 어떤 값을 받아올지 정해주는 것을 파라미터(매개변수)라고 부른다.
    함수를 끝내는 방법은 return을 쓰면 함수가 끝나게 된다.

    function add(a + b) {
      return a + b 
    }
    
    const sum = add(1, 2)
    console.log(sum) // 3

    JavasScript는 객체지향 프로그래밍 언어이다. 그러므로
    JavaScript에서 함수는 함수 안에 정의 할 수 있고 이렇게 정의 된 함수는 자신이 정의된 스코프의 변수에 접근 할 수 있다.

  1. 데이터 타입
  • 데이터 타입
    JavaScript의 데이터 타입에는 크게 원시형, 참조형 두가지로 나뉜다.
    기본형은 Number, String, boolean, null, undefined 등이 있고
    참조형은 객체, 배열, 함수, 날짜 등이 있는데 객체의 하위 분류에 속한다.
    기본형은 Call by value로 값을 그대로 불러오고 참조형은 Call by reference로 값이 저장 되어 있는 메모리의 주소값을 들고온다.
  1. 실행컨텍스트
  • 실행 컨텍스트는 실행할 코드에 제공할 환경 정보들을 모아놓은 객체로, JavaScript의 동적 언어로서의 성격을 가장 잘 파악할 수 있는 개념이다.

    실행컨텍스트는 JavaScript 코드가 실행되는 환경을 말한다. 모든 JS코드는 실행컨텍스트 내부에서 실행된다고 생각하면 된다.
    함수가 실행되면 함수 실행에 해당하는 실행컨텍스트가 생성되고, JS 엔진에 있는 콜 스택에 차곡차곡 쌓인다. 하나의 함수가 실행되면 콜스택이 사라지고, 가장 상단에 있던 컨텍스트가 실행된다.

  • variable environment & lexical environment
    variable environment 는 현재 컨텍스트 내의 식별자에 대한 정보 + 외부 환경 정보를 담는다
    lexical environment 는 처음에는 variable environment와 같지만 변경사항이 실시간으로 반영된다.

  • 호이스팅과 함수표현식, 함수선언식
    호이스팅은 선언된 변수를 최상단으로 끌어올리는 것을 말한다.
    함수 선언문은 fucntion 정의부에 존재하고, 별도의 할당 명령이 없는 것이고
    함수 표현식은 별도의 변수에 할당을 해준 것을 말한다.
    함수 선언문은 함수 전체가 호이스팅되고, 함수 표현식은 변수 선언부만 호이스팅 된다.

2주차 회고

2주차는 알고리즘 문제 풀기와 자바스크립트란 무엇인가에 대해 학습 했다.
React를 시작하든 나중에 Vue를 배우든 결국 기초가 되는 것은 자바스크립트라는 것을 생각하고, 메소드 정리나 js에서 중요하다 생각되는 부분을 다시금 정리해야겠다.
3주차 부터는 주특기가 시작 되는데 그때 허둥지둥 되지 않기 위해 2주차 까지 초석을 잘 다듬어 둬야겠다는 생각을 했다.

profile
함께 하는 개발자

0개의 댓글