总结
new.target
可以用来判断是不是通过 new
调用的该方法
今天在看 Node.JS
源码的时候,发现一个没见过的写法 new.target
1 | function Console(options /* or: stdout, stderr, ignoreErrors = true */) { |
当通过 new
关键词调用一个方法的时候 new.target
指向当前这个方法,可以用来判断是不是通过 new
操作调用的。
以前通过 this instanceof F
来判断,但是 instanceof
是可以通过外力改变他的表现形式的。