Я создал двух конструкторов Person and Employee. Конструкция сотрудника, наследующая свойство Person. Это работает отлично. Теперь я хочу добавить новое свойство в конструктор Person с прототипом. Но получить пустую строку. Пожалуйста помоги.Как добавить новое свойство в существующий конструктор в качестве параметра
JS код
function Person (age, weight) {
this.age = age;
this.weight = weight;
}
Person.prototype.name = name;
//we will give Person the ability to share their information.
Person.prototype.getInfo = function() {
return "I am " + this.age + " year old and weight " + this.weight + " kg.";
};
function Employee (age, weight, salary, name) {
//Person.call(this, age, weight); // by call parameters as arguments
Person.apply(this, arguments); // by apply arguments as array
this.salary = salary;
}
Employee.prototype = new Person();
Employee.prototype.constructor = Employee;
Employee.prototype.getInfo = function() {
return "I am "+this.name+" " + this.age + " year old and weight " + this.weight + " kg having $" + this.salary +" pm salary";
}
var person = new Employee(30, 70, 4000, "Manish");
console.log(person.getInfo());
document.write(person.getInfo());
Вы хотели сделать что-то вроде 'Person.prototype.PROPERTY = PROPERTY_VALUE'? –
Да ... после этого он должен работать как «новый сотрудник» (30, 70, 4000, «Маниш») ' –
Если вы это сделаете, он должен работать. Только проблема заключается в том, что значение не может быть задано динамически. И в вашем коде 'Person.prototype.name = name;' - я не думаю, что это правильно. Вы указываете на свойство 'name' на объекте' window' –