this

this 자신이 속한 객체 또는 자신이 생성할 인스턴스를 가리키는 자기참조 변수 함수 호출시 arguments객체와 this가 암묵적으로 함수 내부에 전달됨 this바인딩 호출시에 동적으로 결정됨 strict 모드도 영향을 미침 함수 호출방식과 this바인딩 함수의 상위스코프를 결정하는 방식인 렉시컬 스코프는 함수 정의가 평가되는 시점에 상위스코프를 결정한다. 하지만 this바인딩은 함수 호출 시점에 결정한다. 1. 일반함수 호출 this에 전역객체가 바인딩된다. 이는 중첩함수와 콜백함수도 마찬가지이다. 2. 메서드 호출 메서드 내부의 this는 메서드를 호출한 객체에 바인딩된다. 3. 생성자 함수 호출 생성자 함수 내부의 this에는 생성자 함수가 생성할 인스턴스가 바인딩된다. Function.prot..
strict mode란? function foo(){ x=10; } foo(); console.log(x); //10 이런 코드의 경우 x가 전역 객체에 등록되어 선언하지도 않았는데도 불구하고 등록이 된다. 이를 암묵적 전역이라 한다. 이런 현상을 방지하기 위해 strict mode가 추가되었다.(ES5부터) strict mode의 적용 사용하려면 전역의 선두 또는 함수 몸체에 ‘use strict’;를 추가한다. 전역의 선두에 하면 전체에 적용된다. 'use strict'; function foo(){ x=10; //Error } foo(); 함수의 선두에도 사용가능하다. function foo(){ 'use strict'; x=10; //Error } foo(); 전역에 strict mode적용을 피..
그렇다. 내가 쓰는 this는 대부분 내가 생각하는 그것이 아니었다. js의 this는 함수 호출방식에 따라 결정된다. js의 함수는 호출될 때, 매개변수로 전달되는 인자값 외에 arguments 객체와 this를 암묵적으로 전달받는다. 실행중에는 할당으로 설정할 수 없고, 함수를 호출할 때마다 다를 수 있다. 아래 링크를 참고하여 글을 쓴다. https://poiemaweb.com/js-this this | PoiemaWeb 자바스크립트의 this keyword는 Java와 같은 익숙한 언어의 개념과 달라 개발자에게 혼란을 준다. Java에서의 this는 인스턴스 자신(self)을 가리키는 참조변수이다. this가 객체 자신에 대한 참조 값을 poiemaweb.com 그래서 ES5는 함수가 어떻게 호출..
_0422
'this' 태그의 글 목록