전체 글

전체 글

    [ Javascript ] This 란 무엇인가?

    This this 란 함수를 호출할 때 생성되는 실행 컨텍스트 프로퍼티이다. This 가 가리키는 값은 함수가 호출되는 방식에 따라 다릅니다. 식별자 this 는 함수가 호출되는 방식에 따라 this 가 가리키는 값이 동적으로 결정됩니다. 이를 바인딩이라고 합니다. this 바인딩 1. 전역 객체 바인딩 함수가 전역에서 호출되면 this 는 전역 객체를 가리킵니다. 브라우저 환경에서 전역 객체는 window, Node.js 환경에서 전역 객체는 global 입니다. function foo() { console.log(this); } foo(); // window 2. 객체의 메서드 호출 함수가 객체의 메서드로 호출되면 this 는 객체를 가리킵니다. const obj = { foo() { console...

    [ JavaScript ] 고차함수 ( HOF ) 란 무엇인가?

    고차함수 (Higher-order function, HOF) 자바스크립트 함수는 일급 객체이므로 함수를 값으로 다룰 수 있습니다. 함수를 값으로 다룰 수 있다는 것은 함수를 인자로 전달하거나 함수를 반환할 수 있다는 것을 의미합니다. 이러한 함수를 고차함수라고 합니다. const add = (x, y) => x + y; const square = (x) => x * x; const doSomething = (f, x, y) => f(x, y); doSomething(add, 1, 2); // 3 doSomething(square, 2, 3); // 4 위 예제에서 doSomething 함수는 add 함수와 square 함수를 인자로 전달받아 함수를 실행합니다. 이처럼 함수를 인자로 전달받아 함수를 실행하..

    [ Javascript ] passed by value, passed by reference 의 차이점

    [ Javascript ] passed by value, passed by reference 의 차이점

    값에 의한 전달 (passed by value) 원시 타입의 값은 값에 의한 전달 (passed by value) 방식으로 전달됩니다. 원시 타입의 값은 변경할 수 없는 값이므로 원시 타입의 값을 변경하려면 새로운 값을 재할당해야 합니다. 또한 원시 타입의 값은 변경할 수 없는 값이므로 함수의 매개변수로 원시 타입의 값을 전달하면 함수 내부에서 매개변수의 값을 변경해도 원본 값은 변경되지 않습니다. const num = 1; const increase = (num) => { return num + 1; }; increase(num); // 2 console.log(num); // 1 참조에 의한 전달 (passed by reference) 객체 타입의 값은 참조에 의한 전달 (passed by refer..