Schnelle Kreuzung von Rechteck zu Rechteck

Was ist ein schneller Weg, um zu testen, ob sich zwei Rechtecke schneiden?

Eine Suche im Internet ergab diesen Einzeiler (WOOT!), Aber ich verstehe nicht, wie man ihn in Javascript schreibt, er scheint in einer alten Form von C ++ geschrieben zu sein.

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
        );
}

Antworten auf die Frage(10)

Ihre Antwort auf die Frage