1. 程式人生 > >自動實例化對象

自動實例化對象

route 原型鏈 router 是否 如果 class pre return ins

我們知道判斷一個對象是否是由構造函數實例化出來的,可以用 instanceof關鍵字來判斷

instanceof 運算符用來測試一個對象在其原型鏈中是否存在一個構造函數的 prototype 屬性。

所以如果直接調用一個構造函數 我們可以以此來判斷它不是new出來的對象。

function Router() {
  if (!(this instanceof Router)) {
    return "請使用new關鍵字"
  }}

那如果需要直接調用,不用new 關鍵字的話 是否也可以實例化一個對象出來呢?當然可以!

function Router() {
  if (!(this instanceof Router)) {
    return new Router()
  }}

好吧,就是這麽簡單

自動實例化對象