Utilizando . o [] para acceder a las propiedades del Objeto: ¿cuál es la diferencia?

¿Cuál es la diferencia entre el código (i) y (ii) escrito a continuación?

(yo

var obj:Object = new Object();
obj.attribute = value ;

(ii)

var obj:Object = new Object();
obj["key"] = value;

¿Hay alguna implicación en el tiempo de ejecución si escribo esto:

var obj:Object = new Object();
obj.somekey = value1 ;
obj["someKey"] = value2 ;

Por favor explique

Respuestas a la pregunta(2)

Su respuesta a la pregunta