Как стать автором
Обновить

Комментарии 38

Ну неужели! Я уже думал не дождусь, даже успел на jquery перейти.
Всё-таки мне прототайп синтаксисом не нравиться, посмотрим может в будущем позитивные изменения будут.
И чего же вы ждете? Что изменится синтаксис?
И это в том числе. Это было основное из-за чего я перебрался на jQuery. Неудобно работать с результатами работы селекторов, из-за этого код получался громоздким.
Ещё можно поработать над перфомансом, он ощутимо хромает.
В любом случае работать всегда есть над чем.
Думаете бесполезно ждать?
а я вот год назад не дождался и перешел на jquery.
По поводу кроссбраузерности. Элементарный код
var a = ['a', 'b'];
a[5] = 'c';
var str = '';
a.each(function(item) {
    str += item;
});
alert(str);
В ИЕ и в остальных браузерах выдаст разные результаты, т.к. они до сих пор не знают, как работает стандартный forEach.
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
Не ошибся в чем?

В Prototype метод each у массивов работает по разному в разных браузерах. А если each, то и большинство остальных методов, т.к. они его используют.
НЛО прилетело и опубликовало эту надпись здесь
Я привел линк, который показывает, как работает forEach. Хотя выдернуть оттуда эту информацию трудновато, согласен.

>> Это означает, что обычным циклом for при переборе отделаться не удастся, необходимо проверять, существует ли данный индекс в массиве или он пропущен.

Чтобы подправить Prototype нужно в _each в цикле добавить условие if (i in this).
НЛО прилетело и опубликовало эту надпись здесь
В корневом комментарии я привел пример. Там индексы 2, 3 и 4 пропущены.
пришлось по долгу службы работать с prototype, и пришел к выводу, что jquery наше все
Этот вывод представляется мне справедливым. Например, сохранение метаданных в элементах DOM, которое во Prototype только-только добавили — в jQuery было уж.
Да jquery — кошерная штука. А наработки jquery используются при разработке православного гипертекстового векторного фидонета?
НЛО прилетело и опубликовало эту надпись здесь
к сожалению нет
Опоздали чуваки, поздно уже это все. Пациент скорее мертв.
Фиг знает, пока в Rails по умолчанию все хелперы на Prototype, JRails их не полностью замещает ( А в деле jquery-ui еще и багово ).

Отказываться от хелперов не охота.
Это не альтернатива jquery, попытка воскресить мертвеца.
Prototype ми пом'янули
Незлим тихим словом.
Блин, я тоже предатель, перешёл на JQuery, правда не только из-за синтаксиса, а сколько из за UI и количества плагинов :)
Protyвный type — эх — ты ведь был моим первым.
Два месяца назад я тебе изменил.
Прости, но я так больше не могу.
Пока не забирай свои вещи, дай время купить новые.
Ты сам во всем виноват — наглый косноязычный пенсионер
Все, я ухожу в Jорджу Querчатнику!
(и не считайте меня этим самым)
Удивительно, как много людей перешло на jQuery…

Жалко, что Рельсы собраны с Прототайпом )
НЛО прилетело и опубликовало эту надпись здесь
Шутки шутками, но, кажется, так и происходит — люди потихоньку умнеют и переходят на Django.
НЛО прилетело и опубликовало эту надпись здесь
А чем плох синтаксис jQuery?
НЛО прилетело и опубликовало эту надпись здесь
«Leave this Alone!»?.. Хм-м-м...

Сожалею, но я считаю совершенно натуральным и естественным, что this в контексте функции, вызываемой методом each, означает очередной элемент коллекции: в конце концов, this — это контекст, так что очень хорошим подспорьем (и продуктивным достоинством jQuery) является замена this по мере углубления в итерации цикла.

Ужé поэтому аргументы Вандербурга кажутся мне несколько неубедительными.

Кроме того, с точки зрения синтаксиса сам я не стал бы заменять вот этот прежний джаваскрипт:

for (var i=0; i<this.columns.length; i++) {
    this.buildHeader(this.columns[i]);
}

на вот такой код jQuery, как это делает Вандербург:

var me = this;
$.each(this.columns, function() {
    me.buildHeader(this);
});

Я бы использовал цепочку:

var me = this;
$(me.columns).each(function() {
    me.buildHeader(this);
});

Это кажется более естественным с точки зрения jQuery, да и смысл не теряется.
НЛО прилетело и опубликовало эту надпись здесь
Это действительно проблема, так как jQuery гораздо ближе по DSL-идеологии к Ruby/Rails, чем Prototype со своей ориентированностью на грубое ООП.

Например, если взять типичный Rails-проект — AdvaCMS, в котором используется jQuery, всё равно выкинуть безболезненно Prototype не получается, есть небольшая часть завязок на него.
НЛО прилетело и опубликовало эту надпись здесь
Кому нравится подход прототайпа (расширение функционала базовых объектов) лучше выбрать mootools, он намного более функционален даже без учета more добавки. Очень приятно что в мутулсе многое включено и не нужно использовать разные плагины и надейтся на их совместимость с новыми версиями ядра фреймворка.
интересно они допилили совместимость аяксовых функций с FF3?
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории