Здравствуйте.
Есть такой пример:
class Dropdown() {
	// перенести сюда метод toggle
}
class Nav extends Dropdown {
	constructor(selector) {
  	super();
  	this.$el = document.querySelector(selector);
  	this.$btn = this.$el.querySelector('.nav-button');
    	this.$btn.addEventListener('click', this.toggle.bind(this));
  }
  
  toggle() {
  	this.$el.classList.toggle('nav_open');
  }
  
  // this.$el и this.$btn будут использоваться в других методах класса Nav
}
class Menu extends Dropdown {
	constructor(selector) {
  	super();
  	this.$el = document.querySelector(selector);
  	this.$btn = this.$el.querySelector('.menu-button');
    	this.$btn.addEventListener('click', this.toggle.bind(this));
  }
  
  toggle() {
  	this.$el.classList.toggle('menu_open');
  }
  // this.$el и this.$btn будут использоваться в других методах класса Menu
}
new Nav('.nav');
new Menu('.menu');
У меня есть два класса для навигации и меню. Они хоть и отличаются, но имеют много похожих частей кода. Например, метод toggle делает одно и то же, но оперирует разными кнопками и css-классами, поэтому я хочу перенести его в Dropdown.
Собственно вопрос: каким образом внутри Dropdown получить доступ к нужной кнопке и css-класу? Передавать их внутри 
super()? Но на момент вызова они еще не объявлены.