實現乙個new操作符的具體實現步驟:
/**
* 建立乙個new操作符
* @param con 建構函式
* @param args 往建構函式中傳的引數
*/function
createnew
(con,
...args)
;//建立乙個物件,因為new操作符會返回乙個物件
obj.__proto__ = con.prototype;
//將物件與建構函式原型鏈結起來
let res = con.
(obj,args)
;//將建構函式中的this指向這個物件,並傳遞引數
if(res instanceof
object
)else
}function
foo(name, age)
var f =
createnew
(foo,
'chocolate',18
);console.
log(f)
;
注意:
一、new操作符的幾個作用:
二、new操作符的特點:
學如逆水行舟,不進則退
乙個前端菜鳥面試官的體會
因為工作專案需要,上週急聘一位前端開發人員。老闆的要求是,基礎要紮實,移動端有開發經驗,能快速上手,這就可以了 來面試的那些人怎麼說呢,簡歷基本都是高大上 相信老闆初篩簡歷的時候也是稍微用心了 都是豐富的pc 移動端開發經驗,簡歷裡面的技術特長 工作經歷 專案經歷加起來基本沒有少於3頁紙的。然而,他...
C 用兩個棧實現乙個佇列(面試官的小結)
前言 兩年前從網上看到一道面試題 用兩個棧 stack 實現乙個佇列 queue 覺得不錯,就經常拿來面試,幾年下來,做此題的應該有幾十人了。通過對面試者的表現和反應,有一些統計和感受,在此做個小結。用c 描述,題目大致是這樣的 已知下面stack類及其3個方法push pop和 count,請用2...
滴滴面試官 如何實現乙個執行緒安全的單例模式
單例模式作為最常見的設計模式,有很多實現方式,今天介紹一下單例模式相關的內容。從字面上理解,單例模式需要確保乙個類只有乙個物件。比如執行緒池 快取 日誌物件 印表機驅動物件 顯示卡驅動物件等,這些類的物件往往只需要乙個例項就可以。如果乙個類的物件需要被頻繁建立,那麼也會需要頻繁gc,單例模式就可以解...