За последние 24 часа нас посетили 16884 программиста и 1179 роботов. Сейчас ищут 1630 программистов ...

undefined при обращении к свойству класса

Тема в разделе "JavaScript и AJAX", создана пользователем gw1516, 28 авг 2021.

Метки:
  1. gw1516

    gw1516 Активный пользователь

    С нами с:
    4 май 2017
    Сообщения:
    29
    Симпатии:
    0
    Здравствуйте. Изучаю ООП. Написал класс

    содержимое конструктора
    Код (Javascript):
    1.     dataSource;
    2.  
    3.     constructor(dataSource) {
    4.         this.dataSource = dataSource;
    5.     }
    Далее уже вне класса создаю экземпляр класса и вывожу в консоль

    Код (Javascript):
    1. let object = new MyClass(dataSource);
    2.  
    3. console.log(object);
    в данном случае все нормально, в консоли вижу содержимое переменной dataSource:
    dataSource: {cart: Array(3), products: Array(6)}

    но когда пытаюсь вывести в консоль

    Код (Javascript):
    1. console.log(object.dataSource)
    2. // или
    3. console.log(object['dataSource'])
    возвращается пустой объект {}. Подскажите пожалуйста. Почему так? Как получить содержимое свойства класса?
     
    #1 gw1516, 28 авг 2021
    Последнее редактирование: 28 авг 2021
  2. don.bidon

    don.bidon Активный пользователь

    С нами с:
    28 мар 2021
    Сообщения:
    912
    Симпатии:
    143
    Код (Javascript):
    1. class MyClass {
    2.     constructor(dataSource) {
    3.         this.dataSource = dataSource;
    4.     }
    5. }
    6.  
    7. let object = new MyClass({a: 1, b: 2});
    8. console.log(object.dataSource);
    замечательно выдаёт в лог
    Код (Javascript):
    1. {a: 1, b: 2}