Всем привет. Делаю сайт по javascript на знаковом домене http://javascript.ru. И очень интересует мнение Javascript / PHP-разработчиков. Что и в каком виде Вы хотели бы видеть на этом сайте ? Сайт находится в состоянии активной разработки, буду рад любым ответам.
Хе-хе. Хочу уже полгода по яваскрипту сайт написать, но сначала решил закрыть текущие проекты. iliakan Хочется подобие мануала по пхп http://ru2.php.net/manual/ru/function.trim.php Посмотрю, какой у вас будет сайт. Если не понравится - сделаю новый, хотя бы для себя.
Мануал по ECMAScript сделать можно, да. По DOM - самым лучшим вариантом, видимо, будет перевести основные стандарты W3C.
Баговый очень уж форум для оперы. При регистрации очень много гемороя: то каптчю не показывает, то переадресация не работает. Opera 9.22. А по теме - полезный сайт, PHP функции порадовали, тесты интересные
В принципе сайт интересный, давно пора было сделать нечто подобное. Пара недочетов после беглого просмотра: Основной тест по js. Вопрос "Какие варианты правильно объявляют функцию f, возвращающую сумму двух аргументов" немного некорректен (возможно, я просто очень придирчив ) На мой взгляд, единственно верный ответ - function f(a,b) { return a+b }, бо только в этом случае объявляется функция f. Остальное - это объявление анонимных функций и присваивание их переменной f. Аналоги функций php. Готовьтесь, очень скоро начнутся вопросы типа "А почему ваши md5/base64 работают не так, как в php?" Что такое get_class? С каких это пор в javascript появились классы? Вообще я против таких аналогов. Складывается такое чувство, что только ленивые php-шники придумывают для себя "Аналог array_pop в javascript", потому что не хотят/знают/могут использовать уже существующие методы языка. Согласитесь, ведь никто не делает аналоги методов питона в javascript, так зачем они нам? Поясню, я не против сложных и часто необходимых алгоритмов, которые реализованы в php или где-то еще, но считаю, что при переносе какого-либо функционала в другой язык нужно пользоваться средствами этого языка, а не копировать принципы исходного. Ну т.е. в случае всяких array_diff и т.п. расширение прототипа Array (на крайняк - вынесение всего этого в отдельный объект) было бы более оправданно. Желаю успехов!
Да, некоторая разница между объявлении. Поправил соответствующий вопрос теста. И сделал новый - по разнице Спасибо Ивашка! Неужели http://php.javascript.ru/md5 работает не так как PHP ? На моих тестах все совпадает. В данном случае раздел нужен не только чтобы предоставить отсутствующие функции (md5), но и чтобы облегчить работу с javascript для людей, знакомых с PHP. Вообще, можно что-то такое нравоучительное написать насчет необходимости освоения самого javascript, вот тока что
iliakan Спасибо за проект. За функции РНР отдельное. Надеюсь список будет пополняться? ) Статьи пока толком не читал, мельком взглянул. Но понравилось.
В первую очередь на пополнение - список статей. Еще думаю - надо ли открыть коммунити блоги в рамках javascript или нет.
Работает то она также, вот только с кодировками проблемы. И utf8_encode тут не поможет. Я там в комментарии пример оставил. ЗЫ. Илья, а почему client-side.ru забросили?
Очень хотелось бы разместить на сайте учебник и грамотный обзор по каждому из известных фреймворков. Сам я написать не могу по фреймворкам, которыми не пользуюсь. Если у кого есть опыт в prototype/jQuery/mootools/etc - и готовы написать грамотный обзор/учебник - пишите, опубликуем.
Домен знаковый, а качество статей по js хромает. Бегло: - "В отличие от некоторых других языков, + складывает, только если все операнды числа, а иначе – делает конкатенацию строк" Только если все числа? Проверим (1 + true), (1 + null), (true + true), (true + new Object(1))... и так далее. - "Объектные типы создаются через оператор new" А без new? А функции? Объектный тип в единственном числе, во множественном - значения. - "Преобразования типов делаются через название типа" Не только. И фраза "делаются через название" слегка разрушает моск. - "Стандартно конвертация осуществляется вызовом Number(). С числами можно и попроще, +str" И не с числами можно попроще. - "Сравнение == делается с приведением типов" Не обязательно - (undefined == null). - "В Javascript есть два вида массивов" Один. Array object. - "используется свойство this" Ключевое слово. - "функция создает внутри себя переменную arguments" Не переменную. - "именованная функция видна везде, а анонимная - только после объявления" FunctionExpressions также могут быть именованы. - "выполнение функции хранит все переменные в специальном объекте с кодовым именем [[scope]]" Не переменные. И вообще, весь блок про замыкания целиком неточен в деталях, [[scope]] - это не scope chain при вызове, отсюда растут и все неточности...
Перевод ECMA-262 с качественными комментариями был бы очень и очень кстати. Чтобы хотя бы туда посылать всех вопрошающих Мог бы даже немного помочь в этом нелегком деле. iliakan, а насколько глубоко вообще вы и те кто с вами в JS разбираетесь?
iliakan Кстати, можешь еще задуматься о добавлении задач на сайте. Я когда начинал js учить хотелось где-то на чем-то приминить знания, а найти интересные задачи в сети сложновато было, куча ерунды. Так что если бы появился раздел с задачами разбитыми по темам, то думаю кому-нибудь это бы пригодилось!
Zeroglif, большое спасибо за комментарии, в ближайшее время поправлю недочеты изложения. Что касается замыканий - я попробовал какой-то баланс сделать между полным описанием происходящего и простотой. Сделаю review статьи, посмотрю как можно это улучшить. Вообще, я буду благодарен за указание любых недочетов в статьях и на сайте. vasa_c: в javascript я, думается, разбираюсь довольно-таки неплохо. Объективно судить мне, конечно, сложно. Устроить перевод спецификации - только за. Пока что несколько людей выразили свое желание помочь, но никто не прислал перевода хотя бы одного параграфа. Как только хоть что-нибудь подобное появится - я тут же сделаю раздел спецификации на сайте и его опубликую.
Zeroglif: В контексте статьи "именованная функция" - это FunctionDeclaration, которое никак не может быть одновременно FunctionExpression. Добавил замечание об этом. arguments - не переменная? А что это? "Массив" - структура данных, предоставляющая определенный интерфейс. Он бывает ассоциативный и обычный. Array - это реализация обычного. Object - реализация ассоциативного. Таким образом, в JS есть таки два вида массивов.