Poza oczywistym faktem, że pierwsza forma może wykorzystywać zmienną, a nie tylko literał łańcuchowy, czy istnieje jakiś powód, aby używać jednego nad drugim, a jeśli tak, to w jakich przypadkach?
W kodzie:
// Given:
var foo = {'bar': 'baz'};
// Then
var x = foo['bar'];
// vs.
var x = foo.bar;
Kontekst: Napisałem generator kodu, który produkuje te wyrażenia i zastanawiam się, który jest lepszy.