Вопросы по теме 'prototype-programming'

Чем __proto__ отличается от конструктора.prototype?
function Gadget(name, color) { this.name = name; this.color = color; } Gadget.prototype.rating = 3 var newtoy = new Gadget("webcam", "black") newtoy.constructor.prototype.constructor.prototype.constructor.prototype Он всегда возвращает...
53436 просмотров

JavaScript: Class.method и Class.prototype.method
В чем разница между двумя следующими объявлениями? Class.method = function () { /* code */ } Class.prototype.method = function () { /* code using this.values */ } Можно ли думать о первом операторе как об объявлении статического метода, а о...
193898 просмотров
schedule 08.04.2022

Плюсы и минусы моделирования наследования в Javascript?
Я понимаю, что Javascript не имеет классов и не предназначен для классического наследования ООП. Но я нахожу такие шаблоны настолько полезными, что захотел создать простой способ моделирования такого поведения, в идеале используя лучшие стороны...
2141 просмотров

Что означает прототип, принадлежащий классу, а не экземпляр в javascript?
Я задал вопрос: Почему я не могу объявить конструктор создает экземпляр объекта, а затем обращается к прототипу? И вы можете видеть, что я отметил ответ. Я понимаю ответ, но я немного смущен тем, что он имеет в виду: The prototype...
225 просмотров
schedule 27.01.2023

Быстрое наследование Javascript: понимание __proto__
Учитывая следующий конструктор, Dog = function(name, age, ...){ Animal.call(this, name, age, ...); // And some other stuff that dogs do } Я использую следующую строку кода, чтобы скопировать свои методы и свойства из класса Animal ,...
377 просмотров

Object.preventExtensions действительно позволяет изменять __proto__?
Я просматривал MDC о новых функциях, добавленных в Object. Один из них, Object.preventExtensions , предотвращает мутации в прототип объекта, который можно получить с помощью Object.getPrototypeOf или __proto__ . Однако в Chrome кажется, что...
2001 просмотров

Причина использования 'instanceof function () {}'?
В Центре разработчиков Mozilla есть страница о функции Function.prototype.bind . и предоставляет функцию совместимости для браузеров, которые не поддерживают эту функцию. Однако при анализе этого кода совместимости я не могу понять, почему они...
1373 просмотров

Недостатки наследования прототипов JavaScript, каковы они?
Недавно я смотрел презентации Дугласа Крокфорда по JavaScript , где он восторгается наследованием прототипов в JavaScript, как будто это лучшее, что есть после нарезанного белого хлеба. Учитывая репутацию Крокфорда, вполне может быть. Может...
5319 просмотров

Прототип в этом вызове фрагмента массива, почему?
Я читал страницу MDN для переменной arguments функции JS: https://developer.mozilla.org/en/JavaScript/Reference/Functions_and_function_scope/arguments Я понимаю, что arguments не является массивом, поэтому это не сработает: var a =...
1356 просмотров
schedule 13.05.2024

Определение методов прототипа внутри конструктора
Сегодня я увидел шаблон JavaScript, который никогда не видел за всю свою жизнь. Я не могу сказать цель использования этого шаблона. Мне это кажется неправильным, но я хочу быть немного консервативным. Это может быть какой-то удивительный узор,...
4821 просмотров
schedule 17.05.2023

Старый объект как прототип
Я читаю эту книгу, и там есть глава о прототипах с этим трудным для понимания абзацем и фрагмент кода. Когда вы создаете новый объект, вы можете выбрать объект, который должен быть его прототипом. Механизм, предоставляемый JavaScript для...
195 просмотров
schedule 12.01.2024

Зачем использовать прототип для методов вместо this.methodName
Возможный дубликат: Преимущества использования прототипа по сравнению с определением методов прямо в конструкторе? Зачем использовать: Person.prototype.toString = function() { return this.name; } над Function Person(name) {...
1041 просмотров
schedule 29.11.2022

В чем разница между объектом и прототипом в прототипном программировании?
Я пытаюсь понять «способ JavaScript» создания и использования объектов и думаю, что сталкиваюсь с непониманием объекта и прототипа. В новом проекте, который я начал, я решил попробовать прототипное наследование. Я запутался, если это означает, что...
4036 просмотров

JavaScript: Object.myMethod против Object.protoype.myMethod?
У меня проблема, когда я хочу добавить метод в класс Object в JavaScript. Я не знаю разницы между Object.myMethod и Object.prototype.myMethod . Object.myMethod = function (){}; Object.prototype.myMethod = function (){}; Может...
376 просмотров

В какой момент в JavaScript рождается прототип Object?
Скажем, у меня есть функция-конструктор: function Cat() { this.tail = "long"; this.colour = "black"; } console.log(Cat.prototype); // returns an empty [object Object] with no properties (checked with `for...in` loop). Итак, на данный...
80 просмотров

Разбор нестандартных прототипов C++
Я пытаюсь создать программу, которая анализирует и перечисляет содержимое файлов заголовков. До сих пор все было хорошо, мне было легко анализировать и перечислять заголовки, которые я написал, но когда я начал анализировать заголовки...
268 просмотров
schedule 19.11.2022

прототипная концепция наследования в javascript как язык, основанный на прототипах
Вы знаете, что Javascript — это язык программирования на основе прототипов . Я читал некоторые книги о Javascript и его концепции прототипного наследования , но: «Если вы не можете объяснить это шестилетнему ребенку, значит, вы действительно...
2638 просмотров

Прототип и конструктор на JavaScript (простой английский)?
"JavaScript — самый непонятый язык в мире", – Д.Крокфорд Мои вопросы: Конструктор и прототипы на простом английском? В чем необходимость использования прототипа? Какова цель использования прототипов и конструкторов? Я имею в...
2029 просмотров

Sub.prototype = new Base() vs Sub.prototype = Base.prototype
В Интернете есть много ресурсов о прототипировании и наследовании JavaScript. Большинство из них используют код, подобный этому: function Base() {} function Sub() {} с наследованием, реализованным следующим образом: Sub.prototype = new...
107 просмотров

Можно ли вложить функции в объект в прототипе и получить доступ к базовому объекту?
Update: I can't answer the question, since it's locked, but I have my own solution to this problem at the bottom, working with Jonas' answer Предположим, у меня есть это дополнение к прототипу. Я буду использовать HTMLElement в качестве примера....
36 просмотров
schedule 23.09.2022