Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 13.01.2013, 13:14
Кандидат Javascript-наук
Отправить личное сообщение для zlodiak Посмотреть профиль Найти все сообщения от zlodiak
 
Регистрация: 24.02.2012
Сообщений: 104

различие между функцией и объектом
помогите пожалуйста понять почему здесь всё работает как надо, а здесь нет

проблема в том, что в первом случае для объявления объекта использую литеральную нотацию.в результате становится возможным вызов его функции init из файла index.html .
во втором случае для объявления объекта я использую Function Declaration. в результате скрипт ломается и консоль выводит ошибку

как я понимаю в javascript всё является объектами. даже функция. так почему же я получаю ошибку во втором случае?
Ответить с цитированием
  #2 (permalink)  
Старый 13.01.2013, 15:41
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

function mediator(){
	this.ememy = {};
	
	this.players = {};
	
	this.init = function(){
...
Ответить с цитированием
  #3 (permalink)  
Старый 13.01.2013, 17:26
Аватар для Dim@
Профессор
Отправить личное сообщение для Dim@ Посмотреть профиль Найти все сообщения от Dim@
 
Регистрация: 21.04.2012
Сообщений: 951

danik.js,
не прокатит:
function mediator(){
    this.ememy = {};
     
    this.players = {};
     
    this.init = function(){
      alert("LOL");
     }
}
mediator.init()
Ответить с цитированием
  #4 (permalink)  
Старый 13.01.2013, 17:31
Аватар для Dim@
Профессор
Отправить личное сообщение для Dim@ Посмотреть профиль Найти все сообщения от Dim@
 
Регистрация: 21.04.2012
Сообщений: 951

zlodiak,
потому что то что во втором случае - тело функции, а не её содержимое, плюс так как в теле функции переменные объявляются без var то они записываются в область видимости где состоит функция (ещё в ИЕ вроде есть пара багов с этим)
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
тэг font, перенос по словам и отступы между строк maloun365 (X)HTML/CSS 1 14.11.2012 22:52
postMessage между вкладками cyber Events/DOM/Window 3 06.10.2012 02:30
Как вывести возвращаемое функцией значение не через модальное окно? Bandicoot Общие вопросы Javascript 1 10.03.2011 18:34
Почему jQuery является одновременно функцией и объектом? FINoM jQuery 3 14.02.2011 02:44