Добавление пользовательских методов к встроенным классам Javascript

Некоторые люди не знают этого, но на самом деле вы можете добавлять свои собственные пользовательские методы к строкам, массивам и многому другому.

Прототипы

Как мы знаем, каждый класс в Javascript имеет прототип, содержащий все методы, которые могут использовать экземпляры этого класса, и мы можем получить к нему доступ, используя Class.prototype.

Добавление методов в прототип

Давайте создадим метод reverse в прототипе String, который изменит строку на противоположную:

String.prototype.reverse = function() {
    let rev = "";
    for (let i = 0; i < this.length; i++) {
        rev = this[i] + rev;
    }
    return rev;
}
Войти в полноэкранный режим Выйти из полноэкранного режима

Теперь это будет работать.
Дело в том, что прототипы — это тоже объекты, а объекты могут иметь методы, поэтому мы прикрепили метод reverse к объекту прототипа строки, ключевое слово this внутри метода будет ссылаться на строку, на которой мы вызываем метод.
Теперь, чтобы использовать этот метод, мы просто вызываем его, как любой другой метод

console.log("Hello".reverse()); //olleH
Войти в полноэкранный режим Выйти из полноэкранного режима

Теперь я не знаю, как это может быть полезно, но я подумал, что это классная вещь, которую нужно знать!

Оцените статью
Procodings.ru
Добавить комментарий