es6 화살표 함수 및this의 지향 문제
1377 단어 web
es3, es5의 구조 함수와 es6의 화살표 함수의 차이:
es3 es5의 함수 쓰기:
function (){
}
es6의 화살표 함수 쓰기:
()=>{
}
참고: 매개 변수가 하나이고 함수 내에서 매개 변수를 반환값으로 직접 사용하면 ()와 {}를 생략할 수 있습니다.
{
var array = [1,2,3,4,5];
var adds = array.map(function (v) {
return v+1;
});
console.log(array,adds);
}
{
let arr = [1, 2, 3, 4, 5];
let odd = arr.map((v) => {
return v + 1;
});
console.log(arr, odd);
}
es3 es5 및 es6에서this의 지향 문제:
es3과es5에서의this의 지향 문제,this는 이 함수가 호출되었을 때의 대상을 가리키고, 아래 코드에서 c대상은 b()를 호출했기 때문에this가 가리키는 것은 c대상이기 때문에 마지막으로 출력한 것은'a+'입니다.
{
var factory = function () {
this.a = 'a';
this.b = 'b';
this.c = {
a: "a+",
b: function f() {
return this.a;
}
}
};
console.log(new factory().c.b());
}
es6의this의 지향 문제,this의 지향은 정의할 때this의 지향이고, 정의할 때this의 지향은 구조 함수의 실례, 즉 newfactory () 이다.newfactory () 의 실례는 위의 a입니다.
{
let factory = function () {
this.a = 'a';
this.b = 'b';
this.c = {
a: "a+",
b: () => {
return this.a;
}
}
};
console.log(new factory().c.b());
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Portswigger의 연구실 작성: CSRF 토큰 보호를 사용한 기본 클릭재킹이 견습생 수준 실습에서는 일부 CSRF 토큰 보호가 있음에도 불구하고 클릭재킹에 취약한 웹사이트에서 계정 삭제 흐름을 악용합니다. 주어진 자격 증명으로 로그인하면 계정 페이지로 이동한 후 사용자 계정을 삭제하는 데...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.