¿Cómo recorrer las llamadas GET / POST secuencialmente (esperando el retorno anterior)?

Estoy escribiendo un script de Tampermonkey para una página web y estoy tratando de extraer datos de otras páginas.
Estoy tratando de hacer una función que tenga un bucle dentro que vaya a través de una lista,llcList, y recupera datos del método ajax GET, pero me gustaría esperar a que termine una solicitud antes de pasar a la segunda.
La bonificación sería si pudiera hacerla esperar un poco más de tiempo.

Qué debería pasar:

enviar solicitud de una lista de llc [0]obtener datos de retorno, procesarlosEspera algún tiempoenviar una nueva solicitud para una lista de llc [1]

es posible? Probé algunos métodos, cada vez que el bucle envía todas las solicitudes con una diferencia de un segundo. :

function F_Company_LLC(){
for (i = 0; i < llcList.length;i++) {
        if(llcList[i][2]=="lab"){
            //run function 0
            //break;
        }
        else if(llcList[i][2]=="shop"){
            //run function 1
            //break;
        }
        else{
            F_GET_CompData(llcList, llcList[i][1],i,function(result){
                console.log(result);
            });
        }
}}

function F_GET_CompData(F_GET_CompData_list, CompID, F_GET_CompData_row, callback){
$.ajax({
    method : "GET",
    url: base_link+"/company/edit_company/"+CompID,
    beforeSend: function(){runningRequest++;},
    success: function(data){

  //data processing

        runningRequest--;
    },
    error: function() {console.log("Get_ComData");}
});
callback(runningRequest);}

Respuestas a la pregunta(2)

Su respuesta a la pregunta