Why does this function return "fail"?. Interesting!

function whatdoesitdo(){

return (![]+[])[+[]]+(![]+[])[+!+[]]+
([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]];

}

http://www.jsfuck.com/