箭頭函式與普通函式的區別是什麼?如何實現乙個new

2021-10-08 20:14:55 字數 462 閱讀 2818

箭頭函式是普通函式的簡寫,可以更優雅的定義乙個函式,和普通函式相比,有以下幾點差異:

2、不可以使用 arguments 物件,該物件在函式體內不存在。如果要用,可以用 rest 引數代替。

3、不可以使用 yield 命令,因此箭頭函式不能用作 generator 函式。

4、不可以使用 new 命令,因為:

沒有 prototype 屬性 ,而 new 命令在執行時需要將建構函式的 prototype 賦值給新的物件的 __proto__

function new(fn, ...rest) ;

obj.__proto=fn.prototype; // 前兩行可以合併一行 var obj = object.create(fn.prototype)

return (typeof res === 'objcet') ? res : obj

}

箭頭函式和普通函式的區別是什麼?

普通函式this 箭頭函式this 區別 箭頭函式是匿名函式,不能作為建構函式,不能使用new let func let fc newfunc typeerror func is not a constructor箭頭函式不繫結arguments,取而代之用rest引數 解決 function fn...

內聯函式與普通函式的區別是什麼

內聯函式是 被插入到呼叫者 處的函式。如同 define 巨集,內聯函式通過避免被呼叫的開銷來提高執行效率,尤其是它能夠通過呼叫 過程化整合 被編譯器優化。內聯函式和巨集很類似,而區別在於,巨集是由預處理器對巨集進行替代,而內聯函式是通過編譯器控制來實現的。而且內聯函式是真正的函式,只是在需要用到的...

內聯函式與普通函式的區別是什麼

內聯函式是 被插入到呼叫者 處的函式。如同 define 巨集,內聯函式通過避免被呼叫的開銷來提高執行效率,尤其是它能夠通過呼叫 過程化整合 被編譯器優化。內聯函式和巨集很類似,而區別在於,巨集是由預處理器對巨集進行替代,而內聯函式是通過編譯器控制來實現的。而且內聯函式是真正的函式,只是在需要用到的...