Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #31 (permalink)  
Старый 27.06.2014, 15:21
Аватар для Erolast
Профессор
Отправить личное сообщение для Erolast Посмотреть профиль Найти все сообщения от Erolast
 
Регистрация: 24.09.2013
Сообщений: 1,436

Пришли два пацана на форум программистов и начали всех учить правильному коду. Збс.
Ответить с цитированием
  #32 (permalink)  
Старый 27.06.2014, 15:23
Аватар для nverv
Аспирант
Отправить личное сообщение для nverv Посмотреть профиль Найти все сообщения от nverv
 
Регистрация: 26.06.2014
Сообщений: 70

Сообщение от Erolast Посмотреть сообщение
Пришли два пацана на форум программистов и заявили, что тут все неправильно кодят на неправильно составленном языке. Збс.
да нет жешь, наоборот шобы понять основы языка, ибо в учебниках не понятно

вот ты мне скажи - зачем разделять переменные от свойств
вот балин не врубаюсь

локальные переменные в области видимости функции - варом
все остальные переменные так или иначе все располагаются в иерархии глобального объекта - их можно создавать методом добавитьСвойство и удалять

и всё

Последний раз редактировалось nverv, 27.06.2014 в 15:29.
Ответить с цитированием
  #33 (permalink)  
Старый 27.06.2014, 15:25
Аватар для Erolast
Профессор
Отправить личное сообщение для Erolast Посмотреть профиль Найти все сообщения от Erolast
 
Регистрация: 24.09.2013
Сообщений: 1,436

Тебе объяснили эти основы, я лично аж несколько раз. var использовать надо обязательно, ибо это стандарт. Ты с foo напару упорно твердишь, что мы тут все неправы и он не нужен. Прелестно, чо.
Ответить с цитированием
  #34 (permalink)  
Старый 27.06.2014, 15:28
Аватар для Erolast
Профессор
Отправить личное сообщение для Erolast Посмотреть профиль Найти все сообщения от Erolast
 
Регистрация: 24.09.2013
Сообщений: 1,436

Цитата:
вот ты мне скажи - зачем разделять переменные от свойств
Затем, что это разные сущности.
Ответить с цитированием
  #35 (permalink)  
Старый 27.06.2014, 15:30
Аватар для nverv
Аспирант
Отправить личное сообщение для nverv Посмотреть профиль Найти все сообщения от nverv
 
Регистрация: 26.06.2014
Сообщений: 70

Сообщение от Erolast Посмотреть сообщение
Тебе объяснили эти основы, я лично аж несколько раз. var использовать надо обязательно, ибо это стандарт. Ты с foo напару упорно твердишь, что мы тут все неправы и он не нужен. Прелестно, чо.
тут ты не прав

создавать можно и Варом и методом добавтьСвойство - результат одинаковый за исключением параметра Неудаляемый
Ответить с цитированием
  #36 (permalink)  
Старый 27.06.2014, 15:30
foo foo вне форума
Профессор
Отправить личное сообщение для foo Посмотреть профиль Найти все сообщения от foo
 
Регистрация: 17.05.2014
Сообщений: 197

Сообщение от Erolast
Да, это пережиток ранних стандартов.
На самом деле, откуда идут корни проблемы. Объявление без var соответствует оператору set! из scheme -- это оператор деструктивного присваивания. Обьявление без вар не модифицирует глобальную область, он модифицирует низлежащее лексическое окружение. Если бы программисты JS это понимали, они бы не стреляли себе в ногу,


counterMaker=function(start){return function(){console.log(start++)}}
counter=counterMaker(5)

counter()
counter()
counter()
//--------------\  
5
6
7

Это ф-ция с состоянием, и она не засирает глобал, хотя никакого вар тут нет, синтаксически. Все проблемы от непонимания инструмента.

Последний раз редактировалось foo, 27.06.2014 в 15:34.
Ответить с цитированием
  #37 (permalink)  
Старый 27.06.2014, 15:32
foo foo вне форума
Профессор
Отправить личное сообщение для foo Посмотреть профиль Найти все сообщения от foo
 
Регистрация: 17.05.2014
Сообщений: 197

Сообщение от nverv
варом создаю глобальные переменные, и постепенно образуется бардак
то есть вар это не решение проблемы засирания, это другая история
Не, там они, эти комитетчики и прочие, видят проблему в том, что глобал засирается неявно. То что явно определено в глобале, об этом речи нет
Ответить с цитированием
  #38 (permalink)  
Старый 27.06.2014, 15:33
Аватар для nverv
Аспирант
Отправить личное сообщение для nverv Посмотреть профиль Найти все сообщения от nverv
 
Регистрация: 26.06.2014
Сообщений: 70

Сообщение от Erolast Посмотреть сообщение
Затем, что это разные сущности.
есть две сущности -
1) иерархия объектов внутри глобального объекта (создаются методом добавитьСвойство)
2) локальные переменные подпрограмм (создаются Варом)

вот это настоящая правда-истина
Ответить с цитированием
  #39 (permalink)  
Старый 27.06.2014, 15:35
Аватар для Erolast
Профессор
Отправить личное сообщение для Erolast Посмотреть профиль Найти все сообщения от Erolast
 
Регистрация: 24.09.2013
Сообщений: 1,436

Цитата:
создавать можно методом добавтьСвойство
При чем тут метод defineProperty, если ты о нем, когда мы говорим о переменных?

Цитата:
есть две сущности -
1) иерархия объектов внутри глобального объекта (создаются методом добавитьСвойство)
2) локальные переменные подпрограмм (создаются Варом)

вот это настоящая правда-истина
Да, правильно. Ну, почти. defineProperty используется для того, чтобы при объявлении свойства установить на него какие-либо флаги. Свойства объявляются обычно так:
var some_object = {};
some_object.property = 10;

Последний раз редактировалось Erolast, 27.06.2014 в 15:38.
Ответить с цитированием
  #40 (permalink)  
Старый 27.06.2014, 15:36
Аватар для nverv
Аспирант
Отправить личное сообщение для nverv Посмотреть профиль Найти все сообщения от nverv
 
Регистрация: 26.06.2014
Сообщений: 70

Сообщение от Erolast Посмотреть сообщение
При чем тут метод defineProperty, если ты о нем, когда мы говорим о переменных?
что такое переменная?! если не просто именованный контейнер, адрес относительно глобального корня

о чем мы спорим?

Последний раз редактировалось nverv, 27.06.2014 в 15:39.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Кто с нодой может помочь? И какой редактор посоветуете? Антон Крамолов AJAX и COMET 14 22.11.2012 20:34
Проблема с обработкой OnClick suslik90 Events/DOM/Window 1 11.05.2012 21:09
CComponent - кроссбраузерные компоненты tenshi Ваши сайты и скрипты 5 20.04.2010 23:22
Свойства посредством полиморфных функций tenshi Ваши сайты и скрипты 0 18.03.2010 17:12
глюк форума Gvozd Сайт Javascript.ru 11 18.03.2009 14:37