Часто интервьюируя на переднем конце или общение с другими сверстниками заключается в том, что когда речь заходит о конструкторе в JS, лучше всего использовать прототипы: определить метод на прототипе конструктора. Преимущество заключается в том, что методы, которые генерируются конструктором, указывают на индекс функции, которая может сохранить память.
Конечно, нет проблем с этим утверждением. Просто с точки зрения реализации можно не только достичь такого эффекта, используя прототип. Мы можем определить метод вне конструктора в форме функции, а затем использовать это. Method = метод в конструкторе. Таким образом, сгенерированные методы экземпляра также указывают на функцию через индекс следующим образом:
// Не используется метод определения прототипа: (function () {function contractor () {this.method1 = method1; this.method2 = method2;} function method1 () {} функция method2 () {}}) (););Как правило, при использовании определения прототипа код выглядит следующим образом:
(function () {function contractor () {} constactor.prototype = {method1: function () {}, method2: function () {}}; // или constactor.prototype.method1 = function () {}; constactor.prototype.method2 = function () {};В теории и реализации нет ничего глубокого. Просто для достижения той же цели можно использовать разные способы. Однако этот метод не работает при использовании оператора экземпляра для оценки отношений наследования.
Подробное объяснение преимуществ использования прототипов в JS является полным контентом, разделенным редактором. Я надеюсь, что это может дать вам ссылку, и я надеюсь, что вы сможете поддержать Wulin.com больше.