Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   var good = new Bad(10,20) undefined (https://javascript.ru/forum/dom-window/66855-var-good-%3D-new-bad-10-20-undefined.html)

maksim2099 14.01.2017 19:48

var good = new Bad(10,20) undefined
 
Помогите пожалуйста, бьюсь уже который час....

Создал класс передаю в него параметры а в новом объекте в __proto__ возвращается Выводится Undefined
EditableTable = (function() {
  function EditableTable(tableId, columnsNumber) {
    this.tableId = tableId;
    this.columnsNumber = columnsNumber;
  }

  EditableTable.prototype.hello = EditableTable.tableId;

  EditableTable.prototype.options = {
    addButton: '#addToTable',
    table: EditableTable.tableId,
    columns: EditableTable.columnsNumber,
    dialog: {
      wrapper: '#dialog',
      cancelButton: '#dialogCancel',
      confirmButton: '#dialogConfirm'
    }
  };
..............................

editableTable = new EditableTable("lol");

editableTable.initialize();

console.dir(editableTable.options.table);

console.dir(editableTable.options);

console.dir(editableTable);


Почему, возможно банальная ошибка, но все же

destus 14.01.2017 20:18

maksim2099,
Нет никакого EditableTable.tableId. tableId будет в инстансах класса, это не статическое свойство.

maksim2099 14.01.2017 21:14

Спасибо!
Так я и вызываю его из инстанса
editableTable = new EditableTable("lol");
console.dir(editableTable);


А как мне тогда передать значение при создании объекта другим способом?
:help:

destus 14.01.2017 21:25

maksim2099,
Цитата:

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


Часовой пояс GMT +3, время: 20:10.