В чем разница между следующим кодом?
Код 1:
var f = function() { // function body code // ... // ... }();
Код 2:
var f = (function(){ // function body code // ... // ... })();
Какой из них лучше использовать?
Они эквивалентны. Второй может быть более понятным.
Так как это будет неверный синтаксис без присваивания, как в
function() { // ... }();
может быть яснее всегда заключать в скобки анонимные функции.
Они в точности соответствуют синтаксису языка.