Tuesday, October 18th, 2005 01:55 pm
потому что описание объектов делать посредством функций - такого нормальный человек точно придумать не может..
function SomeObject() {
  this.member = ...
}

и потом
var o = new SomeObject()
Tuesday, October 18th, 2005 01:03 pm (UTC)
Если когда-нибудь решите начистить торец авторам оного языка - меня позовите, пожалуйста...
Tuesday, October 18th, 2005 01:13 pm (UTC)
http://log.ometer.com/2005-10.html#18

I have a new JavaScript theory which is that they were LISP-envious. They were all "you know, Lisp had it right to design the language around the One True data structure - they just had the wrong one. So our new language is not list processing, it's HASH TABLE PROCESSING. HOLY SHIT. SCOPES ARE HASHES. OBJECTS ARE HASHES. TYPES ARE HASHES. LISTS ARE HASHES. EVERYTHING YOU TYPE AUTOMATICALLY BECOMES A HASH ENTRY. WOOOOOHOOOOOOOOOOO"
Tuesday, October 18th, 2005 01:30 pm (UTC)
хе-хе ...

ты, наверное, не видел список "недокументированных расширений" для Вижуал Студии ... да и у гнуси своего хватате ...

а "местные" функ.об"екты делать - почему бы и нет ... так сказать единство формы и сущности :)))
Tuesday, October 18th, 2005 01:43 pm (UTC)
Ну хорошо, но почему объекты надо было засовывать в хэш функций, а не в какой-нибудь отдельный хэш объектов?
[identity profile] kuso [npj.ru] (from livejournal.com)
Tuesday, October 18th, 2005 02:04 pm (UTC)
Неплохое решение конструктора класса, на мой взгляд, довольно эргономичное.
Tuesday, October 18th, 2005 02:08 pm (UTC)
Угу, только пространства имен немножко пересекаются, и при чтении путаница происходит, а так, конечно, ничего..
[identity profile] kuso [npj.ru] (from livejournal.com)
Tuesday, October 18th, 2005 02:13 pm (UTC)
Пространства чего?

В JS единое пространство для всех переменных. Функции и прочие объекты (функция -- разновидность объекта) -- разновидность переменных.

Поэтому некоторый-строковый-идентификатор всегда будет указывать на одну сущность. Это, на мой взгляд, хорошо (хорошо, что не бывает var foo и foo() как двух совершенно независимых сущностей).

Путаница от синтаксиса
function someClass() { ... }?

Можно использовать, скажем:
someClass.prototype.someMethod = function() {...}
или
someClass.prototype = { property: "value", method : function() {...} };
Wednesday, October 19th, 2005 10:23 pm (UTC)
Отличный язык, лучше очень многих других.
А какие у вас к нему претензии?
Wednesday, October 19th, 2005 10:24 pm (UTC)
Присоединяюсь к Кусо про "готовить".