웹 프론트엔드 JS 튜토리얼 이것은 JavaScript 함수에서 무엇을 의미합니까?

이것은 JavaScript 함수에서 무엇을 의미합니까?

Nov 27, 2018 am 10:46 AM
this

오늘은 JavaScript에 대한 중요한 지식 포인트를 공유하겠습니다. 이는 특정 참조 가치가 있으며 모든 사람의 학습에 도움이 되기를 바랍니다.

this 키워드를 배울 때 함수에서 무엇을 의미하는지, 어떻게 사용하는지 알지 못하는 경우가 많습니다. 오늘은 이에 대한 지식을 기사

에서 자세히 소개하겠습니다. : JavaScript Tutorial]

Context 및 이 키워드

JavaScript에서 함수에는 자체 실행 컨텍스트가 있으므로 함수의 실행 컨텍스트는 함수가 선언되는 방식이 아니라는 점에 특히 주의하세요. . 함수의 기능에 관한 것이 아니라 코드에서 이를 호출하는 방법에 관한 것입니다. 이 실행 컨텍스트를 호출할 때 사용합니다. 함수 내에서 이것이 액세스되면 실행 컨텍스트가 실제로 액세스됩니다.

함수를 호출하는 방법은 이것과 같습니다

컨텍스트는 함수를 호출하는 방법에 따라 4가지 방법으로 호출할 수 있으므로 이 역시 4가지 포인트가 있습니다.

1. 기본 함수 호출

2. 암시적 바인딩이라고도 하는 함수를 호출하려면 컨텍스트 개체를 사용하세요.

3. call()을 사용하거나 명시적 바인딩이라고도 알려진 apply() 함수를 호출하세요.

4.bind() 메소드를 통한 바인딩

기본 함수 호출

기본 함수 호출은 함수를 호출하는 가장 간단한 방법입니다

예:

<script type="text/javascript">
	var name="张三";
	function student(){
		console.log(this.name);
	}
	student();
</script>
로그인 후 복사

Image 1.jpg

이 예에서는 Student()를 볼 수 있습니다. 함수는 전역 범위에서 호출되므로 여기서는 전역 범위를 참조하므로 출력 결과는 ""张三""

암시적 바인딩

함수가 객체에 의해 "포함"되면 다음과 같이 말합니다. 함수의 this가 이 객체에 암묵적으로 바인딩되어 있다는 것

<script type="text/javascript">
var student={
	name:"张三",
	obj:function(){
		console.log(this.name)
	}
}
student.obj();
	</script>
로그인 후 복사

Image 2.jpg

obj 함수가 객체에 배치되어 있지만 객체 내부에 정의되어 있다고 해서 외부와 다르지는 않습니다. this

명시적 바인딩

을 통해 학생 개체의 a 속성에 계속 액세스할 수 있습니다. call() 또는 apply() 메서드를 사용하여 함수를 호출할 수 있으며 해당 실행 컨텍스트는 개체에 명시적으로 바인딩됩니다. apply는 이것을

를 가리키도록 변경할 수 있습니다예: call() 또는 apply()가 사용되지 않는 경우

<script type="text/javascript">
var name="张三";
var obj = {
	name:"李四",
	fun:function(){
	console.log(this.name);}}
obj.fun();
</script>
로그인 후 복사

Image 3.jpg

call()을 사용하여 이 점이 window

<script type="text/javascript">
var name="张三";
var obj = {
name:"李四",
fun:function(){
      onsole.log(this.name);}}
       obj.fun.call(window);
</script>
로그인 후 복사

Image 1.jpg


bind( )

bind()가 함수를 생성할 것으로 결정됩니다. 함수 본문에 있는 이 개체의 값은 바인딩()에 전달된 첫 번째 매개 변수의 값에 바인딩됩니다. 실행할 수 있는 함수만 반환합니다.

<script type="text/javascript">
var a = {
	b : function(){
		var func = function(){
			console.log(this.c);
		}
		func.bind(this)();
	},
	c : &#39;Hello!&#39;
}
a.b();
	</script>
로그인 후 복사


바인드 메서드를 통해 이를 c 개체의 콘텐츠로 지정합니다.

Image 4.jpg

요약: 위 기사에서 우리는 this를 호출하는 사람이 누구를 가리키는지 알 수 있습니다. 바인딩() 메소드는 이것의 포인터를 변경할 수 있습니다.



위 내용은 이것은 JavaScript 함수에서 무엇을 의미합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Java에서 이 메소드를 사용하는 방법 Java에서 이 메소드를 사용하는 방법 Apr 18, 2023 pm 01:58 PM

1. this 키워드 1. this 유형: 호출되는 개체는 해당 개체의 참조 유형입니다. 2. 사용법 요약 1. this.data;//Access 속성 2. this.func();//Access 메서드 3.this ( );//이 클래스의 다른 생성자를 호출합니다. 3. 사용법 설명 1.this.data가 멤버 메서드에 사용됩니다. 이것이 추가되지 않으면 어떻게 되는지 살펴보겠습니다. classMyDate{publicintyear;publicintmonth;publicintday; 월,월){예

이 점을 이해하고 프론트엔드 70%를 따라잡는 글 이 점을 이해하고 프론트엔드 70%를 따라잡는 글 Sep 06, 2022 pm 05:03 PM

Vue2의 이 포인팅 문제로 인해 동료가 버그로 인해 화살표 기능이 사용되어 해당 소품을 얻을 수 없게 되었습니다. 제가 그에게 소개했을 때 그는 그것을 몰랐고, 그래서 저는 일부러 프론트엔드 커뮤니케이션 그룹을 살펴보았습니다. 지금까지 적어도 70%의 프론트엔드 프로그래머들은 오늘 그것을 이해하지 못하고 있습니다. 모든 것이 불분명하다면 이 링크를 아직 배우지 않았다면 큰 소리로 말해주세요.

jQuery에서 이에 대한 활용 능력 분석 jQuery에서 이에 대한 활용 능력 분석 Feb 22, 2024 pm 08:54 PM

jQuery는 웹 개발에서 DOM 조작 및 이벤트 처리에 널리 사용되는 인기 있는 JavaScript 라이브러리입니다. 중요한 개념 중 하나는 이 키워드를 사용하는 것입니다. jQuery에서 이는 현재 작동 중인 DOM 요소를 나타내지만, 다른 컨텍스트에서는 이것의 포인터가 다를 수 있습니다. 이 기사에서는 특정 코드 예제를 통해 jQuery에서 이에 대한 사용 기술을 분석합니다. 먼저 간단한 예를 살펴보겠습니다.

JavaScript 화살표 함수에서 이에 대한 자세한 설명 JavaScript 화살표 함수에서 이에 대한 자세한 설명 Jan 25, 2024 pm 01:41 PM

JavaScript의 화살표 함수는 자체 this 키워드가 없는 비교적 새로운 구문입니다. 반대로 화살표 함수의 this는 이를 포함하는 범위 개체를 가리킵니다. 1. 화살표 함수의 This는 다음과 같습니다. 2. 화살표 함수는 생성자로 사용할 수 없습니다. 3. 화살표 함수는 메서드로 사용할 수 없습니다.

JavaScript는 이 포인터를 어떻게 변경합니까? 세 가지 방법에 대한 간략한 분석 JavaScript는 이 포인터를 어떻게 변경합니까? 세 가지 방법에 대한 간략한 분석 Sep 19, 2022 am 09:57 AM

JavaScript는 이 포인터를 어떻게 변경합니까? 다음 기사에서는 JS에서 이 포인터를 변경하는 세 가지 방법을 소개합니다. 이것이 도움이 되기를 바랍니다.

이게 뭔가요? JavaScript에서 이에 대한 심층 분석 이게 뭔가요? JavaScript에서 이에 대한 심층 분석 Aug 04, 2022 pm 05:02 PM

이게 뭔가요? 다음 기사에서는 JavaScript에서 이에 대해 소개하고 다양한 함수 호출 방법의 차이점에 대해 설명하겠습니다. 도움이 되기를 바랍니다.

Java에서 이 참조 및 객체 구성을 초기화하는 방법 Java에서 이 참조 및 객체 구성을 초기화하는 방법 May 14, 2023 pm 06:40 PM

1.이 참조 1.1 왜 이 참조가 있어야 합니까? 먼저 날짜 클래스의 예를 작성해 보겠습니다. publicclassclassCode{publicintyear;publicintmonth;publicintday;publicvoidsetDay(inty,intm,intd){year=y;month=m;day= d;}publicvoidprintDate (){System.out.println(year+"-"+month+"-"+day);}publicstatic

이 네 가지 바인딩 규칙을 자세히 설명하겠습니다. 이 네 가지 바인딩 규칙을 자세히 설명하겠습니다. Nov 01, 2022 pm 05:49 PM

this 키워드는 JavaScript에서 가장 복잡한 메커니즘 중 하나입니다. 모든 기능의 범위에서 자동으로 정의되는 매우 특별한 키워드입니다. 그러나 경험이 풍부한 JavaScript 개발자라도 이것이 정확히 무엇을 가리키는지 파악하는 데 어려움을 겪습니다.

See all articles