2013-06-20 1 views
0
! function (d, b, c, a) { 
    Velop.AssignmentQuestionAnswerHandler = function (e) { 
     this.__construct(e) 
    }; 
    Velop.AssignmentQuestionAnswerHandler.prototype = { 
     __construct: function (e) { 
      this.clientAction = Velop.resolveClientAction("client", true); 
      this.sectionIdAction = XenForo.getAction("section"); 
      this.$input = e; 
      this.assignmentQuestionControl = e.closest(".AssignmentQuestionAnswerHandler"); 
      this.$input.change(d.context(this, "save")); 
      this.lastValue = null 
     }, 
... 

Я видел выше скрипт в файле js.выпуск с __construct в файле js

Вопрос:

что это означает? __construct: function (e)? делает это равным constructor: function (e)? Я видел __construct в php-файле, но я никогда не видел, что он используется в js-файле.

+4

'__construct' не имеет особого смысла в Javascript, кто просто выбрал это имя. – deceze

+0

В JavaScript нет концепции конструктора. Это только объявление функции с использованием подчеркивания. – skparwal

ответ

2

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

function Class(e) { 
    this.__construct(e); 
} 

__construct не имеет значения в JavaScript. Кроме того, он находится внутри объекта, где ключи можно назвать чем угодно.

0

Это, кажется, какой-то (странный) тип конструктора. С помощью этой .__-конструкции функция-конструктор доступна из-за пределов функции.

нормально вы флаг внутренней функции с подчеркиванием ... :)

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