JavaScript 에서 함수 가 new 인지()호출 인지 판단 하 는 차이 점 설명
function Person(n,a){
this.name = n;
this.age = a;
if(this instanceof Person){
alert('new ');
}else{
alert(' ');
}
}
var p = new Person('jack',30); // --> new
Person(); // -->
방식 2
function Person(n,a){
this.name = n;
this.age = a;
if(this instanceof arguments.callee){
alert('new ');
}else{
alert(' ');
}
}
var p = new Person('jack',30); // --> new
Person(); // -->
방식 3
function Person(n,a){
this.name = n;
this.age = a;
if(this.constructor === arguments.callee){
alert('new ');
}else{
alert(' ');
}
}
var p = new Person('jack',30); // --> new
Person(); // -->
완벽 해 보이 지만 함수/류 를 자신의 인 스 턴 스 대상 으로 하 는 방법 을 호출 할 때 문제 가 발생 합 니 다
function Person(n,a){
this.name = n;
this.age = a;
if(this.constructor === arguments.callee){
alert('new ');
}else{
alert(' ');
}
}
var p = new Person('jack',30); // new
p.fn = Person; // / Person p fn
p.fn(); // “ new ”,
더 좋 은 방법 이 있 습 니까?
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Azure Functions - 새 함수 만들기📮 문의하기 🇧🇷 🇺🇸 🇫🇷 에 연결되면 새 함수 앱을 만들 수 있습니다. Microsoft의 제한된 무료 서비스에 포함되어 있으므로 새 기능에 대한 소비 계획을 사용자에게 권장합니다. Visual Studio Co...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.