file.js in file.js
Час добрый.
Я в данном стандарте впервые. Так как всё время пишу соблюдая ооп есть привычка импортов классов. Чем являются в javascript классы - объекты уяснил. Но вот ответа на вопрос : 'Как импортировать классы из файлов?' не нашёл. Т.е. есть 3 файла: Чего добиваюсь я: // file1.js need object as class function abstract ( ) { this.oneMethod = function ( ) { // ... return 'hello'; } } // file2.js creat new object as class. window.onLoad = function ( ) { this.needObject = new abstract ( ) ; document.write ( needObject.oneMethod ( ) ) ; } // file.php generate index.html <script src = 'file2.js'></script> заранее благодарен. |
Сохранять класс в отдельный файл, получать файл аяксом.
|
Блин, каким аяксом?!?!?!!!...
Вероятно мой вопрос не понятен! У меня еть 2 файла ( javascript-а ) ; Я хочу в одном файле использовать методы другова! первый находится в папке (пакете) js_one второй в папке (пакете) js_two в html добавляю только один из них который должен использовать методы второго. т.е. что бы не катать портянку кода я хочу разбить его на классы ( в вашем же случае это объекты ). |
Подключить оба скрипта, не?
|
Цитата:
|
Вы можете использовать подключить на страницу оба, а потом спокойно использовать во втором функции / объекты первого.
Либо использовать какие-нибудь библиотеки для модульности. |
видимо он хочет как в PHP подключение по требованию, в PHP есть функция __autoload() которая вызывается ядром PHP в случае если класс небыл обнаружен в памяти загруженным, тем самым можно динамично подключать класс по необходимости а не инклюдить его всегда. В JavaScript подобный способ сомневаюсь что можно реализовать без извращений, тоесть создавать экземпляр класса нужно будет не напрямую через new а через специализированную функцию, которая при необходимости подгрузит нужный класс, но тут вопрос встает с асинхронностью, что загрузка класса приведет к ступору выполнения кода, что не есть гуд конечно.
|
Да не, просто не знакомство с данным стандартом. Думал что можно в javascripte использовать "import need.object;"
Разобрался. Т.е. импорт классов/объектов/file.js только через html документ. Пришёл к такому варианту: var _allScript = ['blocks/TopBlock.js'/*, 'blocks/LeftBlock.js'*/] ; ( function ( ) { addScript ( ) ; } )(); function addScript ( ) { for ( var i = 0 ; i < _allScript.length ; i ++ ) addElement('<script type="text/javascript" src="' + _allScript[i] + '"></script>'); } function addElement ( element ) { document.write ( element ) ; } При использовании одного файла всё работает, если же массив дополняю очередным файлом первый перестаёт работать, а в странице показывает что и тот и тот скрипт присутствует. Помогите понять как импортировать в html javascript-ы не вписывая их индивидуально. Заранее благодарен. |
Тему можно закрывать. Разобрался, спасибо участникам за помощь!
|
Часовой пояс GMT +3, время: 23:15. |