總之, 什麼JavaScript函數對象的差異
var MyModule = {
func: function() {}
};
和
var MyModule = {
func: function f() {}
};
我用第一種方式之間的差別內。但是當我看到角度文檔時,通常是第二種方式。爲什麼,還有什麼區別?
總之, 什麼JavaScript函數對象的差異
var MyModule = {
func: function() {}
};
和
var MyModule = {
func: function f() {}
};
我用第一種方式之間的差別內。但是當我看到角度文檔時,通常是第二種方式。爲什麼,還有什麼區別?
這段代碼的執行方式沒有區別,但第二個版本可以幫助您進行調試。如果您在第一個版本中看到堆棧跟蹤出現某些錯誤,您將看到有關某個匿名函數的信息,而在第二個版本中,您將看到函數名稱。
ESLint對此約定有一個規則。你可以閱讀它here
第一個有anonymous
功能,第二個有named
功能。
兩者的工作原理都是一樣的。這只是爲了確保可讀性。添加一個示例代碼來演示兩者。
var MyModule = {
func: function() { return 10}
};
var MyModuleTwo = {
func: function f() { return 10}
};
//both will return 10
console.log(MyModule.func())
console.log(MyModuleTwo.func())