Ответы пользователя по тегу underscore.js
  • Как с помощью underscore разделить массив по 10 элементов?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    не совсем при помощи lodash... но

    function chunk(arr, n) {
        var chunks = [];
        while(arr.length > n) {
           chunks.push(arr.slice(0, n));
           arr = arr.slice(n, arr.length);
        }
        chunks.push(arr);
    
        return chunks;    
    }
    Ответ написан
    Комментировать
  • Как избавиться от bind в javascript-либах?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Могут ли помочь promise или даже просто события/observer?

    Чта? Это тут причем?

    Неужели в javascript все надо делать на событиях

    Опять же, чта? Почитайте... не знаю... про лямбда исчисления, функциональное программирование... При чем тут ивенты? В вашем примере мы явно задаем контекст функции посредством каррирования:

    _.bind = function (fn, context) {
        
        return function () {
            return fn.apply(context, arguments);
        };    
    };

    Это позволяет нам внутри функции отвязаться от внешней области видимости и быть уверенным что у функции верный контекст. Вдруг вы решите потом поменять ваш self = this на self = undefined или сменить self на that... мало ли... Меньше связанности - больше счастья.

    Когда же писать линейный код а когда декомпозировать?

    Линейный там где нужен линейный код, а событийную модель - при взаимодействии с вводом/выводом, так как оно должно быть асинхронным. Вообще все эти замуты с колбэками и принципы по которым происходит "декомпозиция" учитывают такую штуку как event-loop. В любом случае это не относится к предмету вопроса из заголовка.

    Разберитесь с тем как работает javascript и будет вам счастье.

    p.s. А вы на чем пишите что такие вопросы задаете? Удовлетворите мое любопытство.
    Ответ написан
    1 комментарий
  • Неправильно работает underscore, что делать?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Режим ванги: проверьте что вы передаете в шаблоны.
    Ответ написан
    7 комментариев