2016-09-15 4 views
2

В некоторых проектах я вижу, что функции, которые являются объектными методами, получают имена после конструктора функций - я не понимаю, почему, может ли кто-нибудь объяснить?Javascript: Почему функции метода объекта имени объекта

Пример: названный

someObj.prototype = { 
     load: function someObj_load(file) { 

против неназванного

someObj.prototype = { 
     load: function(file) { 

Я не вижу каких-либо преимуществ в приведенном выше.

+2

Возможно, для рекурсивного вызова функции. Вы сможете повторно использовать имя –

+0

http://stackoverflow.com/questions/336859/javascript-function-declaration-syntax-var-fn-function-vs-function-fn –

ответ

4

Таким образом, вы можете видеть имя функции вместо анонимной функции в трассировке стека. Я думаю, что некоторые браузеры подберут имя переменной/атрибута, которому вы его назначили. Некоторые этого не делают.

Смежные вопросы