回答
這可能取決於在哪個版本的CoffeeScript編譯器上使用。在最新的穩定版本(1.3.3)中,默認情況下不會生成「name」屬性。
class Foo
編譯成
由於name
屬性是非標準和IE瀏覽器目前不支持,你不能真正依靠它跨瀏覽器。關於這個的詳細信息,請在MDN:https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Function/Name
您是否暗示過後期或舊版本會生成名稱屬性?還有一些標誌將覆蓋此默認值,或者您是否必須自己添加屬性。 –
我認爲它已經被刪除了,所以在舊版本中你可能仍然會發現這種行爲,是的。 – Niko
從包含在Foo.prototype
Foo
類的任何方法中,你可以插入行
console.log @constructor.name
,它會返回
Foo
到您的控制檯日誌。 HTH。
現在已經清楚(見https://github.com/jashkenas/coffee-script/issues/2052末尾),它不被支持。如果你想要的話,去問問吧! –
- 1. 獲取類名稱函數的名稱
- 2. 獲取子類的名稱
- 3. 獲取子類名稱?
- 4. 獲取父類名稱?
- 5. Parse.com:獲取Parse.Object類名稱
- 6. 獲取類名稱+繼承
- 7. 按名稱獲取類型
- 8. 獲取類名稱在Django
- 9. 獲取類模板的類型名稱
- 10. 在CoffeeScript中獲取類的類型
- 11. BCEL - 獲取類名稱,元素名稱和方法名稱
- 12. 從父類獲取子類名稱
- 13. 從擴展類中獲取類名稱
- 14. 獲取python類的屬性名稱/獲取查詢的列名稱
- 15. WordPress的 - 從術語id(ACF)獲取分類名稱的名稱
- 16. 獲取的名稱
- 17. 獲取當前類的名稱
- 18. 獲取通用對象的類名稱
- 19. 獲取繼承類的名稱
- 20. 獲取聲明類的名稱?
- 21. 獲取JSTL中數組的類名稱
- 22. 獲取多級別的類別名稱
- 23. 獲取當前類的名稱
- 24. 獲取wordpress中父類別的名稱
- 25. 如何獲取參考類的名稱?
- 26. 如何獲取類的對象名稱?
- 27. 獲取拋出異常的類名稱
- 28. 使用類獲取文件的名稱
- 29. QT:獲取對象的類名稱
- 30. C#從類的名稱獲取枚舉
WRT縮小代碼 - 它確實取決於縮小器和您傳遞給它的配置。大多數可以配置爲不接觸命名函數語句(如UglifyJS的'--no-mangle-functions'),所以'name'屬性應該在那裏工作得很好(除非瀏覽器根本不支持它)。當然,使用CoffeeScript從1.3.3版本開始手動定義的屬性,它應該始終工作而不管縮小(因爲它被添加爲純字符串文字屬性) – shesek