// Постоянно забываю
var el document.elementFromPoint(xy);

И такая дребедень каждый день

$el.on('focus'function (){
    $el.addClass('el_focus');
});

$el.on('blur'function (){
    $el.removeClass('el_focus');
});

// или это
$el.hover(function (){
    $el.addClass('el_hover');
}function (){
    $el.removeClass('el_hover');
});

// ЗАЧЕМ? ОСТАНОВИТЕСЬ!
$el.on('focus blur'function (evt){
    $el.toggleClass('el_focus'evt.type == 'focus');
});

// и
$el.hover(function (evt){
    $el.toggleClass('el_hover'evt.type == 'mouseenter');
});
// Правильно используйте функциональные выражения
(function again(){
    // бла-бла-бла
    setTimeout(again100);
})();

again()// ReferenceError, "again" is not defined

// или
inputArray.forEach(function eachFn(itemidx){
    ifArray.isArray(item){
        item.forEach(eachFn);
    }
    else {
        // ...
    }
});
// Самый простой способ клонирование массива, который я видел:
var clone inputArray.concat();

// .concat — можно использовать, так:
function foo(input){
    [].concat(input).forEach(function (bar){
        // ...
    });
}
// Если вы хотите подписаться на изменение атрибута элемента,
// то забудьте об этом и никакой MutationObserver вас не спасет​​​​​​​​​​​​​.​​​​


// Но есть и хорошая новость!
// DOMNodeInserted и DOMNodeRemoved поддерживаются (даже в IE9+)