TIL

[TIL-93] 노마드코더 / 백준 알고리즘

어포능이만두 2022. 1. 10. 17:58

(EP 03.) 자바스크립트 개발자라면 알아야하는 핵심 컨셉 33개 | #3. Value Types and Reference Types  

  • value(값)과 reference(참조)의 차이
    let a = 50;
    let b = a;
    
    a = 10;
    
    console.log(b);  // ==> 50
    • 문자열, 숫자, 불리언 등은 .
    • 값은 정해져있음. b에는 a의 값을 복사해 넣은 것이고, 그 다음에 a의 값이 변하든 상관없음.
    const one = ["kimchi", "potato"];
    const two = one;
    
    one.push("hello");
    
    console.log(two);  // ==> ["kimchi", "potato", "hello"]
    • 배열, 객체, 함수 등은 참조.
    • 첫째 줄에서 one은 ["kimchi", "potato"]이라는 값을 갖는 것 아님. 따라서 둘째 줄에서 two는 one의 값을 복사하는 게 아니라 ["kimchi", "potato"]이라는 같은 배열을 참조하는 것. ["kimchi", "potato"]이라는 배열은 메모리의 어딘가에 존재하고 있고, one과 two가 각각 그 배열을 공통으로 가리키고 있음. 그래서 이 배열을 업데이트하면 참조하고 있는 one, two도 업데이트된 배열을 출력함.
    • console.log([10] === [10]) ⇒ false. [10]은 각각 메모리 어딘가에 위치한 서로 다른 배열.

 


 

백준 알고리즘 입출력

 


공부할 것

  • ?(if) :(else)