@AlphaDMQ

Как правильно отредактировать скрипт клонирования объекта?

function TestObject() {
    this.name = 'Object to be tested';
}

TestObject.prototype.getName = function (qnt) {
    return this.name + ' ' + qnt + ' times'; //some text
};

Object.prototype.clone = function () {
    let Clone = function () {
        this.cloned = true;
    };
    Clone.prototype = this;
    Clone.prototype.constructor = Clone;
    return new Clone;

};

let testOb = new TestObject;
let clObject = testOb.clone();

console.log(testOb);
console.log(clObject);


Нужно именно модифицировать скрипт и только затем посоветовать лучшие и альтернативные способы. Дело в том, что после выполнения функции testOb.clone(); - clone() правильно возвращает новый объект с правильным конструктором. Но почему constructor как свойство добавляется в сам testOb после этой операции? Помогите решить это.
  • Вопрос задан
  • 70 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы