Javascript-форум (https://javascript.ru/forum/)
-   Node.JS (https://javascript.ru/forum/node-js-io-js/)
-   -   наследование и оператор new (https://javascript.ru/forum/node-js-io-js/82426-nasledovanie-i-operator-new.html)

fxobject 05.05.2021 10:28

наследование и оператор new
 
Доброго дня!
Может кто подскажет, сходу не могу понять - есть класс:
class fxSNMP {
constructor( wsClient ){
..........
}
есть потомок
class DES_1210_10 extends fxSNMP {
.....
}
есть создание объекта
= new fxSNMP( wsClient );
так вот - при создании создается класс - DES_1210_10
отладчиком смотрю. ерунда какая то!!!

voraa 05.05.2021 13:25

Ну если отладчик, то поставьте точку останова на
= new fxSNMP( wsClient );
Потом на конструкторе DES_1210_10 и смотрите, почему он вызывается.

ksa 05.05.2021 14:42

Цитата:

Сообщение от fxobject
при создании создается класс - DES_1210_10

Как именно ты смотришь?

У меня все нормально...

class Test {
	constructor(val) {
		this.val = val
		alert('Из Test ' + new.target.name)
	}
	info() {
		alert('Это родитель')
	}
}
class NewTest extends Test {
	constructor(val) {
		super(val)
		alert('Из NewTest ' + new.target.name)
	}
	info() {
		alert('Это ребенок')
	}
}

const obj1 = new Test('Пример 1')
obj1.info()
const obj2 = new NewTest('Пример 2')
obj2.info()

fxobject 05.05.2021 19:48

все дело было в module.exports.
так и не разобрался что экспортирует оператор
module.exports = class1
сделал иначе
module.exports.class1 = class1
module.exports.class2 = class2
и все дальше завелось

ksa 05.05.2021 20:38

Цитата:

Сообщение от fxobject
сделал иначе
module.exports.class1 = class1
module.exports.class2 = class2

Как "альтернативный" вариант...

module.exports = {
    class1,
    class2
}

fxobject 05.05.2021 21:19

в одной из статей экспорт назвали эти штуки ))). теперь так и будем называть. спасибо откликнувшимся.... вопрос закрыт


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