2.3.8. Спадкування коду скрипті в рі зними сторінками

В дсутн сть якого-небудь спадкування м ж р зними стор нками Website змушувало розроблювач в перетаскувати зодн єїстор нки в ншу досить велику к льк сть часто використовуваних функц й перем нних. Розмови про те, що було б непогано одержати можлив сть доступу до глобальних чи ресурс в можлив сть визначати так глобальн ресурси, ведуться з самого моменту появи JavaScript. На жаль, стрункого логічного механізму передачі параметрів, функцій і перемінних в ід одного чи в ікна фрейму іншому немає йу JavaScript 1.1. Однак, просування вцьому напрямку є.

У контейнера SCRIPT з'явився атрибут SRC. Це дає можлив ість авторам будувати своєрідну бібліотеку функцій, до яких можна звертатися збудь-якої сторінки, уякій буде посилання на таку б бл отеку. При цьому зовс м необов'язково розм щати саму б бл отеку на т м же сервер , де розміщені і гипертекстов і сторінки Website. Можна використовувати і чужі функції, написані ким-небудь з ветеран в програмування на JavaScript на ншому к нц Земл . Ватрибут SRC використовується звичайний URL. Усередині файлу скриптів не використовуються теги SCRIPT. Це звичайний файл із використанням визначень функцій і перемінних. Природно, що використання чужих скриптів може обернутися не тільки корисними придбаннями, але і непередбаченими проблемами. Для звичайних користувачів сторінок Website підкачування великої кількості скриптів може стати просто додатковим джерелом витрат. Найб льш ймов рним випадком може стати використання одних-двох функцій з бібліотеки на одній сторінці, а качати прийдеться всю бібліотеку. Іншою новою можлив істю роботи з функціями стало введення нового об'єкта Function. Об'єкт Function породжується конструктором Function:

newFunction = new Function(arg1,arg2,...,argn, functionbody)

Головна в дм нн сть в д звичайного декларування функц ї полягає вт м, що вданому випадку породжена перемінна newFunction, зяким можна працювати, як збудь-яким іншим об'єктом. При звичайному перерозподілі функції такий перемінної не породжується. Як будь -який об'єкт Function має свої властивості, але не має методів. Як властивості функції виступають аргументи і можлив ість призначення нових властивостей через prototype. У висновку розмови про функції і спадкування хочеться ще раз звернути увагу на властив ість opener в ікон і фреймів. Це властив ість можна використовувати при звертанні до об'єктів сторінки-батька, що дозволяє компенсувати в ідсутність спадкування і глобальних перемінних у JavaScript.