JavaScript - это язык объектно-ориентированного программирования (ООП). Язык программирования можно назвать объектно-ориентированным, если он предоставляет четыре основные возможности разработчикам -

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

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

Свойства объекта

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

Синтаксис добавления свойства к объекту - objectName.objectProperty = propertyValue;

Например - Следующий код получает заголовок документа, используя свойство title для объекта документа.

var str = document.title;

Методы объекта

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

Методы полезны для всего: от отображения содержимого объекта до экрана для выполнения сложных математических операций над группой локальных свойств и параметров.

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

document.write("This is test");

Пользовательские объекты

Все пользовательские объекты и встроенные объекты являются потомками объекта Object.

Оператор New

Оператор New используется для создания экземпляра объекта. Чтобы создать объект, за new оператором следует метод конструктора.

В следующем примере конструкторными методами являются Object(), Array() и Date(). Эти конструкторы являются встроенными функциями JavaScript.

var employee = new Object();
var books = new Array("C++", "Perl", "Java");
var day = new Date("August 15, 1947");

Конструктор Object()

Конструктор - это функция, которая создает и инициализирует объект. JavaScript создает специальную конструкторскую функцию Object() для построения объекта. Возвращаемое значение конструктора Object() присваивается переменной.

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

Пример 1

Попробуйте следующий пример; он демонстрирует, как создать объект.

<html>
   <head>
      <title>User-defined objects</title>
     
      <script type="text/javascript">
         var book = new Object();   // Create the object
         book.subject = "Perl"; // Assign properties to the object
         book.author  = "Mohtashim";
      </script>
      
   </head>
  
   <body>
  
      <script type="text/javascript">
         document.write("Book name is : " + book.subject + "
");
         document.write("Book author is : " + book.author + "
");
      </script>
  
   </body>
</html>
Результат Book name is : Perl
Book author is : Mohtashim
Пример 2

В этом примере показано, как создать объект с пользовательской функцией. Здесь это ключевое слово используется для обращения к объекту, который был передан функции.

<html>
   <head>
  
   <title>User-defined objects</title>
  
      <script type="text/javascript">
         function book(title, author){
            this.title = title;
            this.author  = author;
         }
      </script>
     
   </head>
   <body>
  
      <script type="text/javascript">
         var myBook = new book("Perl", "Mohtashim");
         document.write("Book title is : " + myBook.title + "
");
         document.write("Book author is : " + myBook.author + "
");
      </script>
     
   </body>
</html>
Результат Book title is : Perl
Book author is : Mohtashim

Определение методов для объекта

В предыдущих примерах показано, как конструктор создает объект и назначает свойства. Но нам нужно завершить определение объекта, назначив ему методы.

пример

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

<html>
   <head>
   <title>User-defined objects</title>
  
      <script type="text/javascript">
         // Define a function which will work as a method
         function addPrice(amount){
            this.price = amount;
         }
        
         function book(title, author){
            this.title = title;
            this.author  = author;
            this.addPrice = addPrice; // Assign that method as property.
         }
      </script>
     
   </head>
   <body>
  
      <script type="text/javascript">
         var myBook = new book("Perl", "Mohtashim");
         myBook.addPrice(100);
        
         document.write("Book title is : " + myBook.title + "
");
         document.write("Book author is : " + myBook.author + "
");
         document.write("Book price is : " + myBook.price + "
");
      </script>
     
   </body>
</html>
Результат Book title is : Perl
Book author is : Mohtashim
Book price is : 100

Ключ «with»

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

Синтаксис

Синтаксис для объекта следующий:

with (object){
   properties used without the object name and dot
}
пример

Попробуйте следующий пример.

User-defined objects

We use cookies on our website. Some of them are essential for the operation of the site, while others help us to improve this site and the user experience (tracking cookies). You can decide for yourself whether you want to allow cookies or not. Please note that if you reject them, you may not be able to use all the functionalities of the site.

Ok
Результат
Book title is : Perl
Book author is : Mohtashim
Book price is : 100

Исходные объекты JavaScript

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

Вот список всех важных JavaScript-объектов -

  • JavaScript Number Object
  • JavaScript Boolean Object
  • JavaScript String Object
  • JavaScript Array Object
  • JavaScript Date Object
  • JavaScript Math Object
  • JavaScript RegExp Object



Понравилась статья? Поделитесь ею с друзьями и напишите отзыв в комментариях!

We use cookies on our website. Some of them are essential for the operation of the site, while others help us to improve this site and the user experience (tracking cookies). You can decide for yourself whether you want to allow cookies or not. Please note that if you reject them, you may not be able to use all the functionalities of the site.

Ok