Заметки о вёрстке сайтов  ·  Александр Шуркаев об HTML, CSS и JavaScript (скрипты, справочники и примеры по сайтостроению)
Путь: Заметки о вёрстке сайтов  >  JavaScript  >  3

Свойство prototype встроенных объектов

14 июня 2001 г.

Свойство prototype позволяет расширить функциональность встроенных объектов JavaScript (String, Date, Array и др.).

Свойство prototype позволяет расширить функциональность встроенных объектов JavaScript (String, Date, Array и др.).

Например, мы хотим добавить к объекту String новый метод, который бы применял к HTML строке логическое выделение (тег em или strong). Для этого мы определяем новую функцию:

function Emphatic(bStrong){
    var sEmTag = "em";
    var sStrongTag = "strong";
    var txt = this.toString();
    var sTag = (bStrong) ? sStrongTag : sEmTag;
    return "<" + sTag + ">" + txt + "</" + sTag + ">";
}

Теперь добавляем к String новый метод:

String.prototype.em = Emphatic;

Отныне, когда нам необходимо будет вывести на страницу выделенный текст, достаточно сделать это так:

document.write("Мы выдел\яемс\я!".em(false));

…или так:

document.write("Мы очень выдел\яемс\я!".em(true));

Таким образом, нет нужды помнить о существовании у объекта String методов fixed, bold, italics и иже с ними, так как мы всегда можем с помощью свойства prototype добавить новые методы, возвращающие HTML строки.

Хитовые статьи про разработку сайтов

Рассылка новостей и новых статей

Сообщения будут приходить пару раз в неделю, не чаще

Объявления

LiveInternet