인프런 커뮤니티 질문&답변

김창규님의 프로필 이미지
김창규

작성한 질문수

인터랙티브 웹 개발 제대로 시작하기

객체 4

프로토타입에 화살표 함수 이용 질문입니다

작성

·

345

0

안녕하세요 강의 정말 잘 보고 있습니다, 

제가 강의를 보던중 프로토타입에 만들어지는

함수를 화상표 함수로 사용했더니 생산자에서 만들어진

변수를 이용 못하더라구요 원래 화살표 함수를 사용

하면 안돼는 건가요?

<!DOCTYPE html>
<html lang="en">

<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<style>

	</style>
</head>

<body>



	<h1>object</h1>

	<script>
		(() => {
			function Constructor(nickname,age) {
				this.name = nickname;
				this.age = age;
				console.log(this.name);
			}
			Constructor.prototype.init = () => {
				console.log(this.name);
			}


			const con1 = new Constructor('asdf',18);
			con1.init();
		})();

	</script>
</body>

</html>

답변 2

1

1분코딩님의 프로필 이미지
1분코딩
지식공유자

화살표 함수 내부의 this가 가리키는 객체가, 일반 function 형태의 함수랑 달라서 생기는 문제입니다.

아래 링크에 아주 자세히 정리가 잘 되어있는데요, 4. 화살표 함수를 사용해서는 안되는 경우 파트를 읽어보시면 좋을 것 같습니다 :)
https://poiemaweb.com/es6-arrow-function#4-%ED%99%94%EC%82%B4%ED%91%9C-%ED%95%A8%EC%88%98%EB%A5%BC-%EC%82%AC%EC%9A%A9%ED%95%B4%EC%84%9C%EB%8A%94-%EC%95%88%EB%90%98%EB%8A%94-%EA%B2%BD%EC%9A%B0

0

김창규님의 프로필 이미지
김창규
질문자

아 생성자를 가르키는게 아니고 윈도우를 가르켜서 안돼던거군요 감사합니다

김창규님의 프로필 이미지
김창규

작성한 질문수

질문하기