Я пытаюсь понять, почему функция Fruit работает при создании объекта:
function Fruit(name, color, shape){
this.name = name;
this.color = color;
this.shape = shape;
}
var apples = new Fruit('apple', 'red', 'round');
Почему это не так:
function Fruit(name, color, shape){
name = this.name;
color = this.color;
shape = this.shape;
}
, если, например, имяпосле знака равенства то, что указывает на «яблоко», а это указывает на параметры в переменной яблоки, не имеет ли смысла ставить это после?
Извините заранее, если я не сформулировал фразувопрос правильно.
Чтобы выяснить, почему я не понимаю этого, давайте изменим имена, чтобы они не совпадали:
function Fruit(name, color, shape){
this.thename = name;
this.thecolor = color;
this.theshape = shape;
}
var яблок = новый фрукт ('apple ',' red ',' round ');
И это все равно будет работать, поскольку объектными яблоками будет {thename:' apple ', thecolor:' red ', theshape:' round '}
так что же тогда notame = 'apple', если в функции было thename = this.name?