Допустим такой код:
function ClassOne() {
this.propClassOne = 'hello1';
}
function ClassTwo() {
ClassOne.apply(this);
this.propClassTwo = 'hello2';
}
function ClassThree() {
ClassTwo.apply(this);
this.propClassThree = 'hello3';
}
ClassTwo.prototype = Object.create(ClassOne.prototype);
ClassTwo.prototype.constructor = ClassTwo;
ClassThree.prototype = Object.create(ClassTwo.prototype);
ClassThree.prototype.constructor = ClassThree;
var obj = new ClassThree();
console.log(typeof obj, obj);
var newObj = Object.create(obj);
console.log(typeof newObj, newObj);
obj
является экземпляром какого класса в данном случае?ClassOne
является супер классом для ClassTwo
и ClassThree
или только для ClassTwo
?ClassThree
является подклассом только ClassTwo
или и ClassOne
в том числе?Короче растолкуйте, как правильно называть их по отношению друг к другу.
И еще, если мы к коду выше добавим:
var newObj = Object.create(obj);
newObj
становится экземпляром obj
?Помогите разобраться.
ClassOne
является супер классом для ClassTwo
и ClassThree
newObj
не будет являться экземпляром obj
. У них будут общие свойства из прототипа (общий прототип).Советую следующие источники по данной теме:
Не могу разобраться как настроить debugger в vs code, а именно, куда передавать эти глобальные переменные, вот пример того как они выглядят в вебшторме
Хочу сделать анимацию спидометра с помощью canvasНо мне необходимо, чтобы стрелка спидометра была треугольной формы и при изменении значения,...
помогите пожалуйста с меню, нужно что бы на всех экранах оно было равно ширине 70% то есть на всю область сайтаКак можно это реализовать ?? давать...