2
.call이 // log 메소드의 컨텍스트를 obj로 변경해야한다고 가정했으나 // 그 일을하는 것 같지 않습니다.이 객체에 함수를 사용하는 것처럼 윈도우 객체를 참조하는 것으로 보입니다."this"가 console.log를 인수로 사용하는 이유는 무엇입니까?
let obj={
a: "this should work right?"
}
console.log.call(obj,this.a);//returns undefined
인수는 함수를 호출하기 전에 평가를하기 때문에 문맥이'obj'로 설정되어 있지 않습니다 그 시점에서. – Barmar
. this의 'this'가 .call을 사용하여 변경되지 않기 때문에 - Barmar는 더 나은 것을 말했습니다 : p –
* this *는 실행 컨텍스트의 속성이므로 "컨텍스트"라고해서는 안됩니다. – RobG