class Nodo{
    constructor(dato){
        this.dato=dato;
        this.siguiente=null;
        this.anterior=null;
    }
}

class ListaDoble{
    constructor(){
        this.cabeza=null;
    }

    insertarFinal(dato){
        const nuevo=new Nodo(dato);
        if(!this.cabeza){
            this.cabeza=nuevo;
        }else{
            let actual=this.cabeza;
            while(actual.siguiente){
                actual=actual.siguiente;
            }
            actual.siguiente=nuevo;
            nuevo.anterior=actual;
        }
    }
    mostrarInicio(){
        let actual=this.cabeza;
        let resultado="";
        while(actual){
            resultado+=actual.dato+"<->";
            actual=actual.siguiente;
        }
        console.log(resultado+"null");
    }

    mostrarFinal(){
        let actual=this.cabeza;
        while(actual.siguiente){
            actual=actual.siguiente;
        }
        let resultado;
        while(actual){
            resultado+=actual.dato+"<->";
            actual=actual.anterior;
        }
        console.log(resultado+"null");
    }
}


const ld=new ListaDoble();
ld.insertarFinal(10);
ld.insertarFinal(20);
ld.insertarFinal(30);
ld.mostrarInicio();
ld.mostrarFinal();

Embed on website

To embed this program on your website, copy the following code and paste it into your website's HTML: