我問這個問題,因爲我和我的同事對編碼風格發生爭執,因爲他更喜歡箭函數聲明:箭頭比v8中的普通獨立函數聲明更快速(更高性能,更輕)嗎?
const sum = (a, b) => a + b;
,我更喜歡老式的獨立函數聲明:
function sum(a, b) {
return a + b;
}
我要點是舊式的代碼更具可讀性,並且可以更清楚地區分函數和變量聲明。他的觀點是具有箭頭功能的代碼運行得更快。
當您使用舊式獨立函數聲明而不是箭頭函數時,您是否知道有關實際性能損失(v8中)的內容?罰款是否真的存在?
[使用ES6箭頭函數有沒有性能提升?](http://stackoverflow.com/questions/42772817/are-there-performance-gains-in-using-es6-arrow-functions) –
我預計性能差異將可以忽略不計,並取決於供應商。函數體以相同的方式運行*。不同之處在於函數對象實例化(例如'prototype'屬性)和執行上下文實例化(例如接收器)。 – Ben
@Jonasw我的問題更具體。我只對v8細節感興趣,當其他問題沒有指定任何環境時。我將編輯問題更清楚。 –