| 
		
			Сообщение от Aetae
			
		
	 | 
	| 
		Имеем же то что super нельзя декларировать в function - упадёт, но можно перетасовать метод и он сохранит привязку
	 | 
	
Так это естественно. Что бы super работало, нужно определить объект в котором находится эта function, взять __proto__ этого объекта, и искать свойство начиная с него. Но нет механизма определения в каком именно объекте находится эта функция. Она может вызываться как метод из совершенно разных объектов, а может вообще не быть ни в каком объекте. А при задании метода все ясно - он в том объекте, где объявлен. И вне объекта метод не задать.
	
	| 
		
			Сообщение от Aetae
			
		
	 | 
	| 
		а приватные свойства можно декларировать в function
	 | 
	
Наверно не декларировать а использовать. Их можно использовать везде внутри класса.