0
我希望能夠創造像一個函數:如何定義const函數javascript(語法糖)?
const function doSomething(){...}
不過貌似只有這樣,才能實現它是:
const doSomething=function(){...}
難道我錯了嗎?或者實際上是否有語法糖呢?
我希望能夠創造像一個函數:如何定義const函數javascript(語法糖)?
const function doSomething(){...}
不過貌似只有這樣,才能實現它是:
const doSomething=function(){...}
難道我錯了嗎?或者實際上是否有語法糖呢?
只有在JavaScript中使用const
才能防止重新分配變量。不要與防止價值突變混淆。
const
需要標識符,賦值運算符和右邊。將const
與函數結合的唯一方法是使用函數表達式(您的第二個示例)。
const doSomething = function() {
// do stuff
};
// will either throw an error or the value of doSomething simply won't change
doSomething = somethingElse;
很多人喜歡以確保其功能被命名以便名稱出現在調用堆棧,因此喜歡使用函數聲明(你的第一個例子)。但是,可以命名一個函數表達式。
const doSomething = function doSomething() {
// name will appear as doSomething in the call stack
};
注意,在真正的ES6環境中,或者在Babel中,函數名稱會自動添加,因此您可以分配匿名函數而不用擔心調用堆棧的可調試性。 – loganfsmyth
究竟什麼是你想在第一個這樣做?或者第二個。你想做什麼? – Hogan
JS''const'與C++'const'不一樣。它並沒有說明該功能的功能。 – ssube
不試圖使函數返回一個常量值,只是試圖避免它可以重新分配,並因此而改變。 – caeus