Que diferencias tienes AS3 el manejo de Eventos con Javascript

Por ejemplo POO en Javascript existe la herencia. Lo digo por que necesariamente si deseo hacer un Clase de tipo Event
tendria que heredar de ella, igualmente para el evento "addEventListener" mi clase desde Objeto tiene que heredar

Bueno disculpen mi falta de conocimiento

aqui estan mis classes basicas
:D
Clase Event

function ObjectRequestEvent(_type, _isReady){
const READY_REQUEST = "READY_REQUEST";
var isReady = _isReady;

}

Objeto que dispara el Evento ObjectRequesEvent

function ObjectRequest(){
var request = new Object();
ObjectRequest.prototype.init = function(){

try{
request = new ActiveXObject("Microsoft.XMLHTTP")
}
catch(e){
try{
request = new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e){
try{
request = new XMLHttpRequest;
}
catch(e){
window.alert("support Browser!");
}
}
}


}

ObjectRequest.prototype.getRequest = function(){
ObjectRequest.dispatchEvent(new ObjectRequestEvent(ObjectRequestEvent.REQUEST_READY,true));
}
}


Objeto que implementa el objecto y agrega el escucha al evento
var object_request = new ObjectRequest();

object_request.addEventListener(ObjectRequestEvent.REQUEST_READY, handlerReadyRequest);


function handlerReadyRequest(evt){
window.alert(evt.isReady);
request = object_request.getRequest();
if(!request){
request.open("GET",url,true);
request.onreadystatechange = requestOpen;
request.send(null);
}