Ядро JavaScript; Прототипы

Прототипы - это ядра объекта. Если вы не понимаете объект и не понимаете формулировку и структуру JavaScript в его ядре, вы можете периодически получать отражения последствий в виде булавочных уколов, которые определенно почесывают вам голову и создают огромные трудности при программировании в первую очередь. .

Какие бывают прототипы каких-либо объектов -

Прототип - это первое появление объекта в JavaScript. По сути, это обычные объекты, которые вы создаете и используете каждый раз в своей программе, которые заключены в круглые скобки {}, и имеют 'свойства' и 'методы ()' в нем, которые затем возвращают желаемое значение в зависимости от того, как функция метода вызывается вместе с ее аргументами или ключами в ней. Однако о JavaScript довольно давно известно, что все, что он содержит, является объектом, включая дату, математику, строку, массив и число. Это встроенные объекты, отличные от самосозданных объектов.

Прототип не часто используется разработчиками по причине сложности или никогда не нужен и представляет собой какой-либо объект-конструктор из-за применения классов и объекта-неконструктора. Прототипы устанавливаются извне конструктора, что необходимо для модификации любой функции конструктора в отличие от простых созданных объектов.

Этот блог разделен на две части: первая посвящена основам объекта, а вторая - использованию прототипов в любых объектах-конструкторах.

Часть I

Встроенные объекты и настраиваемые объекты -

Объект содержит свойства и методы, свойства могут быть любыми числами, строками или массивами, тогда как методы строго имеют функции.

Пользовательские объекты имеют внутреннюю или внешнюю область видимости, в зависимости от ее создания. Они могут быть локальными, в отличие от встроенных объектов, и едва доступны в пределах его области видимости.

Встроенные объекты являются глобальными объектами, это означает, что они глобально применимы, доступны и могут использоваться в любом месте программы, которые изначально написаны на JavaScript для повторного использования и упрощения программирования. Пример = Math Объект .

Конструктор объектов (это будет основная тема блога)

Его формирование не производится обычным способом; используя круглую скобку {}. Он пытается разработать функцию для платформы JavaScript. Встроенные и настраиваемые объекты соответствуют объектам-конструкторам, несмотря на различие синтаксиса; Оба не используются одинаково.

В отличие от обычных объектов, объектам-конструкторам необходимо ключевое слово ‘new’ для вызова внутри области видимости. Его вызовы также зависят от области видимости; вне области действия новые объекты не могут быть созданы или вызваны.

Часть II

Использование прототипов

Предположим, нам нужно добавить свойство к любому объекту-конструктору, как это будет сделано?

Прежде чем использовать прототип для изменения любого объекта, я ожидаю, что вы будете знать, как изменять и переназначать существующий объект, а также добавляются новые свойства для заполнения объекта, не являющегося конструктором.

Прототип используется для изменения объектов конструктора, помимо замены, модификации и добавления любого свойства в объекты конструктора.

Назначение прототипа

Мы знали, как добавлять свойства к объектам, не являющимся конструкторами, но для добавления чего-либо в конструкцию мы не можем просто использовать то же самое, что и выше. Для разнообразия функций-конструкторов используется другой синтаксис.

Все в JavaScript - объект. Большинство объектов, которые мы регулярно используем в JavaScript, основаны на конструкторах. Этот объект-конструктор редко используется при создании какой-либо программы на JavaScript, хотя его методы используются широко. Эти объекты-конструкторы были скрыты, чтобы управлять исходным методом и свойствами.

Вышеупомянутые собственные конструкторы содержат множество методов, таких как Array.concat (), Array.splice (), Object.values ​​() или String.replace (). и т. д. , которые широко используются разработчиками JavaScript.

Интересный факт об этих функциях заключается в том, что вы можете добавить свой собственный метод к соответствующему объекту. Как мы знаем, эти объекты-конструкторы скрыты, но это не означает, что вы не можете их изменять, вы все равно можете изменять их с помощью Object.prototype.

Пример

Чтобы продемонстрировать глубокую суть прототипа, я просто проверяю любую строку, является ли она строкой или нет. Я собираюсь добавить isString () к прототипу конструктора String .

Помните, что «isString ()» не является методом встроенного JavaScript. Перехватом ‘valueOf ()’ в новом методе будет строка, для которой вызывается функция метода (в моем случае это будет строка ‘Alphabet’).

Примечание. Прототипы используются только в объектах-конструкторах. Никогда не изменяйте встроенные методы объекта.

Спасибо за прочтение.