먼저 이러한 종류의 기본적인 질문에 대해서는 공식 문서를 참조하는 방법을 배워야 합니다. 문서에 자세한 지침이 있습니다. new foo는 매개 변수를 전달하지 않고서만 사용할 수 있는 new foo()와 동일합니다. 물론, 문서를 완전히 신뢰할 수는 없습니다. 결국 js의 함정도 있습니다. . 그럼 차이점은 무엇인가요? 이 우선순위 요약에 자세한 설명이 있습니다. new(매개변수 목록 포함)의 우선순위는 19이고 new(매개변수 구분 없음)의 우선순위는 18이므로 new foo()가 먼저 실행됩니다
마지막으로 얼마 전 new f(), new f, new f.g(), new f().g() 등을 테스트한 다소 역겨운 인터뷰 질문에 대한 기사를 본 기억이 납니다. 우선순위 계산 문제, 직접 검색해 보세요
먼저 이러한 종류의 기본적인 질문에 대해서는 공식 문서를 참조하는 방법을 배워야 합니다.
문서에 자세한 지침이 있습니다. new foo는 매개 변수를 전달하지 않고서만 사용할 수 있는 new foo()와 동일합니다.
물론, 문서를 완전히 신뢰할 수는 없습니다. 결국 js의 함정도 있습니다. .
그럼 차이점은 무엇인가요? 이
우선순위 요약에 자세한 설명이 있습니다. new(매개변수 목록 포함)의 우선순위는 19이고 new(매개변수 구분 없음)의 우선순위는 18이므로 new foo()가 먼저 실행됩니다
마지막으로 얼마 전 new f(), new f, new f.g(), new f().g() 등을 테스트한 다소 역겨운 인터뷰 질문에 대한 기사를 본 기억이 납니다. 우선순위 계산 문제, 직접 검색해 보세요
MDN을 참고하세요
매개변수를 전달할 필요가 없는 경우 괄호
()
는 선택 사항입니다var mm = 함수(값){
으아악}
var a = 새 mm(1) ;
console.log(a)
var b = 새 mm ;
console.log(b)
생성자에 매개변수가 필요하지 않은 경우 괄호를 추가하는 것과 추가하지 않는 것에는 차이가 없습니다.