js에서 이것의 역할

下次还敢
发布: 2024-05-06 13:45:24
原创
611명이 탐색했습니다.

JavaScript에서 이는 현재 실행 중인 코드의 컨텍스트 개체를 가리키는 특수 키워드입니다. 함수 컨텍스트: 전역 개체 창을 가리킵니다. 메소드 컨텍스트: 메소드가 호출되는 객체를 가리킵니다. 생성자 컨텍스트: 생성되는 새 객체를 가리킵니다. 이벤트 리스너 컨텍스트: 이벤트를 트리거한 요소를 가리킵니다. 화살표 함수 컨텍스트: 상위 범위에서 이를 상속합니다.

js에서 이것의 역할

JavaScript에서 this의 역할this 在 JavaScript 中的作用

在 JavaScript 中,this 是一个特殊关键字,指向当前正在执行代码的上下文对象。它的值根据上下文而有所不同,因为它可以引用函数、方法或对象。

函数上下文

在函数上下文中,this 始终指向全局对象,即 window 对象。因此,在函数中访问 this 时,可以访问全局变量和函数。

function sayHello() {
  console.log(this); // 输出: Window {...}
}
登录后复制

方法上下文

在方法上下文中,this 始终指向调用该方法的对象。这允许方法访问对象的属性和方法。

const person = {
  name: "John",
  sayName: function () {
    console.log(this.name); // 输出: John
  },
};
登录后复制

构造函数上下文

构造函数是用来创建和初始化对象的函数。在构造函数上下文中,this 指向正在创建的新对象。

function Person(name) {
  this.name = name;
}

const person1 = new Person("John");
console.log(person1.name); // 输出: John
登录后复制

其他上下文

除了这些主要上下文外,this 还可以用作:

  • 事件监听器上下文:在事件监听器中,this 指向触发事件的元素。
  • 箭头函数上下文:箭头函数中的 this 继承其父作用域中的 this

注意事项

  • 严格模式下,在函数上下文中,this 不指向全局对象。如果要访问全局对象,需要使用 window 对象。
  • 在 ES6 引入了 bind()call()apply() 方法,用于显式设置或更改 this
  • JavaScript에서 this는 현재 실행 중인 코드 컨텍스트 개체를 가리키는 특수 키워드입니다. . 함수, 메소드 또는 객체를 참조할 수 있으므로 해당 값은 상황에 따라 달라집니다.
🎜🎜함수 컨텍스트🎜🎜함수 컨텍스트에서 this는 항상 전역 객체, 즉 window 객체를 가리킵니다. 따라서 함수 내에서 this에 접근하면 전역 변수와 함수에 접근할 수 있습니다. 🎜rrreee🎜🎜메서드 컨텍스트🎜🎜메서드 컨텍스트에서 this는 항상 해당 메서드가 호출되는 객체를 가리킵니다. 이를 통해 메소드는 객체의 속성과 메소드에 액세스할 수 있습니다. 🎜rrreee🎜🎜생성자 컨텍스트🎜🎜생성자는 객체를 생성하고 초기화하는 데 사용되는 함수입니다. 생성자의 컨텍스트에서 this는 생성되는 새 객체를 가리킵니다. 🎜rrreee🎜🎜기타 컨텍스트🎜🎜이러한 기본 컨텍스트 외에도 this를 다음과 같이 사용할 수도 있습니다. 🎜
  • 🎜이벤트 리스너 컨텍스트: 이벤트 리스너에서 this는 이벤트를 트리거한 요소를 가리킵니다. 🎜
  • 🎜Arrow 함수 컨텍스트: 화살표 함수의 this는 상위 범위에서 this를 상속합니다. 🎜🎜🎜🎜참고🎜
    • 엄격 모드의 함수 컨텍스트에서 this는 전역 개체를 가리키지 않습니다. 전역 개체에 액세스하려면 window 개체를 사용해야 합니다. 🎜
    • bind(), call()apply() 메서드는 ES6에서 명시적으로 설정하거나 변경하기 위해 도입되었습니다.이것. 🎜🎜

위 내용은 js에서 이것의 역할의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

相关标签:
来源:php.cn
본 웹사이트의 성명
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
더>
最新下载
더>
网站特效
网站源码
网站素材
프론트엔드 템플릿
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!