powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / скобки и объекты по умолчанию в javascript
10 сообщений из 10, страница 1 из 1
скобки и объекты по умолчанию в javascript
    #35849405
kefi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть пара простых вопросов начинающего в JavaScript и JScript :

1) Не мог понять , как разобрать код
(function(){
WScript.Echo("How do you do");
})()
Т.е. - что означает заключение слова function в скобки ? И зачем скобки () после (function(){...}) () ?

2) При использовании javascript в браузере часто не указывается объект , а только метод, например, alert("Сообщение");
Как понять, к какому объекту принадлежит метод (alert приведен только для примера, я знаю, что он принадлежит объекту window , но интересует понимание вообще для любого аналогичного использования метода) ? Т.е. как понять , если объект не указан, а только его метод/свойство, то какой объект используется для данного браузера по умолчанию ?
...
Рейтинг: 0 / 0
скобки и объекты по умолчанию в javascript
    #35849418
Фотография Яростный Меч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) Создается функция function(){WScript.Echo("How do you do");} и тут же вызывается (вызов функции - те самые последние скобки).
2) Если объект не указан, то по умолчанию подставляется корневой объект window
...
Рейтинг: 0 / 0
скобки и объекты по умолчанию в javascript
    #35849455
kefi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Яростный Меч1) Создается функция function(){WScript.Echo("How do you do");} и тут же вызывается (вызов функции - те самые последние скобки).
2) Если объект не указан, то по умолчанию подставляется корневой объект window
Спасибо. Хотелось бы уточнения.

1) А ЗАЧЕМ создается функция ? Ведь можно не создавая функции вызвать WScript.Echo("How do you do"); Но! Очень часто в коде JScript скриптов или, например, в Opera UserJavascript используют именно этот прием - создается функция без параметров и тут же вызывается . ?

2) По поводу корневого объекта window - он для всех браузеров одинаковый ?
Правильно ли я понимаю, что это корневой объект DOM модели конкретного браузера, тогда - где для каждого браузера можно посмотреть эту модель ?
Т.е. это вопрос в плане написания кроссбраузерного кода - Какая вообще должна быть политика при написании Javascript кода, чтобы код был совместим с большинством браузеров (IE,Opera,FF)?

PS И кстати, корневой объект - это что такое ? Я знаю, что IE automation , например, объект Window получается через InternetExplorer.Document.Frames - > Window, т.е. как-бы выходит не корневой он ...
...
Рейтинг: 0 / 0
скобки и объекты по умолчанию в javascript
    #35850675
Фотография Яростный Меч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kefi1) А ЗАЧЕМ создается функция ? Ведь можно не создавая функции вызвать WScript.Echo("How do you do"); Но! Очень часто в коде JScript скриптов или, например, в Opera UserJavascript используют именно этот прием - создается функция без параметров и тут же вызывается . ?Рискну предположить, что ради локальных переменных. Т.е. все вспомогательные переменные, которые будут созданы внутри кода, будут локальными и уничтожатся по завершении вызова функции. Плюсы - освобождение памяти.

kefi2) По поводу корневого объекта window - он для всех браузеров одинаковый ?
Правильно ли я понимаю, что это корневой объект DOM модели конкретного браузера, тогда - где для каждого браузера можно посмотреть эту модель ?
Т.е. это вопрос в плане написания кроссбраузерного кода - Какая вообще должна быть политика при написании Javascript кода, чтобы код был совместим с большинством браузеров (IE,Opera,FF)?Думаю, что он везде корневой.
Насчет кроссбраузерности - DOM модели могут различаться (тот же xmlHttpRequest, например, создается по разному), тут надо читать, смотреть. Сам JS практически одинаков везде
...
Рейтинг: 0 / 0
скобки и объекты по умолчанию в javascript
    #35850938
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kefi
IE automation , например, объект Window получается через InternetExplorer.Document.Frames - > Window

Не путайте теплое и мягкое: ОЛЯ - это ОЛЯ. А DOM'ик - это DOM'ик. В ОЛЕ Вы смотрите сверху вниз (снаружи внутрь) на M$ IE. А из JS'а Вы смотрите на browser снизу вверх (изнутри наружу).
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
скобки и объекты по умолчанию в javascript
    #35850986
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ex_Soft
kefi
IE automation , например, объект Window получается через InternetExplorer.Document.Frames - > Window

Не путайте теплое и мягкое: ОЛЯ - это ОЛЯ. А DOM'ик - это DOM'ик. В ОЛЕ Вы смотрите сверху вниз (снаружи внутрь) на M$ IE. А из JS'а Вы смотрите на browser снизу вверх (изнутри наружу).
Первое совсем не так, второе немного не так.
1) InternetExplorer.document.parentWindow
2) В обоих случаях взгляд снаружи внутрь. Просто в первом с уровня IE, во втором с уровня документа. Наружу хода нет.
...
Рейтинг: 0 / 0
скобки и объекты по умолчанию в javascript
    #35851001
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, в случае с IE DOM=OLE. Поэтому несложно и логично было добавить поддержку ActiveX.
Кстати2. OLE — устаревшая технология, ей на смену пришел COM и ActiveX.
...
Рейтинг: 0 / 0
скобки и объекты по умолчанию в javascript
    #35851156
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Antonariy

/me думает: хотелось как лучше, а получилось - как всегда...
Подразумевалось, что в случае с OLE automation МЫ, как бы, держим IE/Word/Calc в кулаке, смотрим на него сверху и командуем. Мы можем управлять именно instance'ом: сделать его видимым/невидимым, активизировать, quit etc. А в случае же DOM'ика, мы, в общем случае, копошимся внутри документа, который загружен в browser.
Antonariy
Наружу хода нет

Кто б спорил ;)

А первый кричал - куда хотим, туда едем, и можем если надо свернуть,
Второй отвечал, что поезд проедет лишь там, где проложен путь.

Antonariy
OLE — устаревшая технология, ей на смену пришел COM и ActiveX

В этой терминологии сам мелкософт ногу сломит. Сколько копий уже было сломано в процессе выяснения кто кому Рабинович.
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
скобки и объекты по умолчанию в javascript
    #35875453
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
off
Antonariy
OLE — устаревшая технология, ей на смену пришел COM и ActiveX

Ex_Soft
В этой терминологии сам мелкософт ногу сломит. Сколько копий уже было сломано в процессе выяснения кто кому Рабинович.

Вот надыбал ( оригинал )

_________________
"Helo, word!" - 17 errors 56 warnings
...
Рейтинг: 0 / 0
скобки и объекты по умолчанию в javascript
    #35875479
зы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Яростный МечТ.е. все вспомогательные переменные, которые будут созданы внутри кода, будут локальными и уничтожатся по завершении вызова функции. Плюсы - освобождение памяти.

на память пофигу, она и так освободится, если, конечно, не ляпнуть туда откровенный мемори лик или не притянуть внешние переменные. Основная цель - полная изоляция и инкапсуляция. Первое - мы можем использовать внутри любые имена и не бояться влезть с кем-то в конфликт или загадить глобальное пространство имен, второе - можно объявить и скрыть переменные, чтобы они были недоступны извне. Например:

Код: plaintext
1.
2.
3.
4.
5.
6.
var obj = (function() {
    var a;
    return { 
         getA: function() { return a; }
    }
})();
obj.getA();
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / скобки и объекты по умолчанию в javascript
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]