Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #31 (permalink)  
Старый 31.01.2010, 17:55
Аватар для PeaceCoder
Профессор
Отправить личное сообщение для PeaceCoder Посмотреть профиль Найти все сообщения от PeaceCoder
 
Регистрация: 15.12.2009
Сообщений: 742

[] и {} - создание массива и обьекта и это создание должно кудато сохранится....
Ответить с цитированием
  #32 (permalink)  
Старый 31.01.2010, 17:57
Аватар для Niar
Труъ кодер
Отправить личное сообщение для Niar Посмотреть профиль Найти все сообщения от Niar
 
Регистрация: 20.01.2010
Сообщений: 194

Ты не понял {l:"l"} нету ошибки
Ошибка когда значение свойства-функция или когда имя свойства-строка
Цитата:
[] и {} - создание массива и обьекта
Да ты что
__________________
http://www.free-lance.ru/users/Nia173 Мой аккуант на free-lance.

Последний раз редактировалось Niar, 31.01.2010 в 18:08.
Ответить с цитированием
  #33 (permalink)  
Старый 31.01.2010, 18:21
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Сообщение от Niar
{"L":5}
Потому что это не expression, а block statement. Чтобы сделать expression, нужно взять в скобки
({"L": 5})
Ответить с цитированием
  #34 (permalink)  
Старый 31.01.2010, 18:23
Аватар для Niar
Труъ кодер
Отправить личное сообщение для Niar Посмотреть профиль Найти все сообщения от Niar
 
Регистрация: 20.01.2010
Сообщений: 194

А поподробней?=)
__________________
http://www.free-lance.ru/users/Nia173 Мой аккуант на free-lance.
Ответить с цитированием
  #35 (permalink)  
Старый 31.01.2010, 18:25
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Поточнее я могу только послать в стандарт ECMAScript читать грамматику. Или обратиться, например, к Дмитрию Сошникову, которые лучше меня объясняет подобные вещи.
Ответить с цитированием
  #36 (permalink)  
Старый 31.01.2010, 18:32
Аватар для B@rmaley.e><e
⊞ Развернуть
Отправить личное сообщение для B@rmaley.e><e Посмотреть профиль Найти все сообщения от B@rmaley.e><e
 
Регистрация: 11.01.2010
Сообщений: 1,810

Сообщение от PeaceCoder
это создание должно кудато сохранится....
Кто сказал?

P.S. Вспоминаем анонимные function expression, которые никуда не сохраняются.

Последний раз редактировалось B@rmaley.e><e, 31.01.2010 в 18:37.
Ответить с цитированием
  #37 (permalink)  
Старый 31.01.2010, 18:42
Аватар для Niar
Труъ кодер
Отправить личное сообщение для Niar Посмотреть профиль Найти все сообщения от Niar
 
Регистрация: 20.01.2010
Сообщений: 194

Ну тогда просто запомню что нужно либо в скобки брать либо присваивать переменной
Потом почитаю его статьи. Я так мельком глянул очень интересные, хотя конечно не мой уровень
__________________
http://www.free-lance.ru/users/Nia173 Мой аккуант на free-lance.

Последний раз редактировалось Niar, 31.01.2010 в 18:52.
Ответить с цитированием
  #38 (permalink)  
Старый 31.01.2010, 19:12
Аватар для Gozar
Отправить личное сообщение для Gozar Посмотреть профиль Найти все сообщения от Gozar
 
Регистрация: 07.06.2007
Сообщений: 7,504

Сообщение от Niar Посмотреть сообщение
А поподробней?=)
Я так понимаю, что
{"x":5}
, это инструкция(наподобие if{}).

А инструкция выполняется в зависимости от условия, а условие в данном случае отсутствует, поэтому происходит нарушение синтаксиса и выводится ошибка. Если же взять в круглые скобки, то это уже выражение, а оно вычисляется сразу и условие ему не нужно.

Последний раз редактировалось Gozar, 31.01.2010 в 19:21.
Ответить с цитированием
  #39 (permalink)  
Старый 31.01.2010, 19:21
Аватар для B@rmaley.e><e
⊞ Развернуть
Отправить личное сообщение для B@rmaley.e><e Посмотреть профиль Найти все сообщения от B@rmaley.e><e
 
Регистрация: 11.01.2010
Сообщений: 1,810

Сообщение от Niar
либо в скобки брать либо присваивать переменной
Там, где явно подразумевается выражение, {} будет трактоваться как литеральное объявление объекта. В остальных случаях - как block statement. Аналогично function expression и function statement.
{
  alert('Я выполняюсь'); alert('И я');
  var i = 0;
  i++;
  alert('i=' + i)
}

Последний раз редактировалось B@rmaley.e><e, 31.01.2010 в 19:25.
Ответить с цитированием
  #40 (permalink)  
Старый 31.01.2010, 19:22
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Сообщение от Gozar
, это инструкция(наподобие if{}).
Ну почти. {} -- это block statement
{alert(1);}
Ответить с цитированием
Ответ



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

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