Intersección rápida de rectángulo a rectángulo

¿Cuál es una forma rápida de probar si 2 rectángulos se cruzan?

Se realizó una búsqueda en Internet con esta línea (¡WOOT!), Pero no entiendo cómo escribirlo en Javascript, parece estar escrito en una antigua forma de C ++.

struct
{
    LONG    left;
    LONG    top;
    LONG    right;
    LONG    bottom;
} RECT; 

bool IntersectRect(const RECT * r1, const RECT * r2)
{
    return ! ( r2->left > r1->right
        || r2->right < r1->left
        || r2->top > r1->bottom
        || r2->bottom < r1->top
        );
}

Respuestas a la pregunta(5)

Su respuesta a la pregunta