Прототипом объекта является , а не свойство, называемое prototype
объекта.Поле прототипа в функции - это объект, который станет прототипом объектов, созданных с помощью этой функции.Объект может получить доступ к прототипу функции, которая его создала, с помощью функции constructor
.Например, this.constructor.prototype.test_var1 = ''
будет работать в большинстве случаев.
Я говорю в большинстве случаев, потому что многие движки JavaScript имеют встроенный __proto__
, который является прототипом объекта и может быть изменен на лету, но этонапример, не поддерживается в IE.
В ES5 вы можете использовать Object.getPrototypeOf () для надежного получения прототипа.Например, вы можете сказать, Object.getPrototypeOf(this).test_var1 = ''
в ES5, который будет работать в современных браузерах, но не в браузерах без поддержки ES5.