Page 92 - 6108
P. 92

Рисунок 3.1 – Ланцюжок областей видимості функцій

                     Цей  ланцюжок  області  видимості  або  ланцюжок  оточення  пов'язаного  з
               функцією зберігається в об'єкті функції в момент створення. Іншими словами,
               вона  визначається  статично  за  місцем  розташування  у  вихідному  коді.  Це
               називають лексичною областю видимості.
                     Є одне виключення із загального правила присвоєння [[Scope]], мають
               функції створені через new Function.
                     При  створенні  функції  з  використанням  new  Function,  її  властивість

               [[Scope]] посилається не на поточний LexicalEnvironment, а на window.

                                                        Тема 3.2 Об'єкти
                     Об'єкт – це головний тип даних JavaScript. Будь-який інший тип даних має
               об'єктову «обгортку» (wrapper). Це означає, що перш ніж можна буде отримати

               доступ  до  значення  змінної  того  або  іншого  типу,  відбувається  конвертація
               змінної в об'єкт, і тільки після цього виконуються дії над значенням. Тип даних
               Object сам визначає об'єкти.
                     Об'єкти JavaScript – це набори властивостей і методів. Властивості об'єктів
               –  це  дані,  пов'язанні  з  об'єктом,  а  методи  –  функції  для  опрацювання  даних
               об'єкта.
                     У мові JavaScript є три типи об'єктів: вбудовані об'єкти, об'єкти браузера й
               об'єкти  на  основі  класів,  створених  у  ході  виконання  програми  (об’єкти
               користувача):
                       об'єкти браузера, які відповідають тому, що міститься або відбувається
               на  Web-сторінці  у  вікні  браузеру.  Вони  створюються  браузером  при  розборі
               (парсінгу)  HTML-сторінки.  Наприклад,  window,  document,  location,
               navigator і т. п.;
                       вбудовані  об'єкти.  Вони  є  різними  типами  даних,  властивостями,
               методами,  властивими  самій  мові  JavaScript,  незалежно  від  вмісту  HTML-
               сторінки. Наприклад, вбудовані класи об’єктов Array, String, Date, Number,
               Function, Boolean, а також вбудований об'єкт Math;
                        об'єкти  користувача.  Вони  створюються  програмістом  в  процесі
               написання сценарію з використанням конструкторів об'єктів (класу).
                     Об'єкти в JavaScript поєднують в собі два важливих функціонали.
                     Перший  –  це  асоціативний  масив:  структура,  придатна  для  зберігання
               будь-яких даних

                     Другий – мовні можливості для об'єктно-орієнтованого програмування.
   87   88   89   90   91   92   93   94   95   96   97