создаёте замыкание:
(function(){
// код
})();
там размещаете две переменные, в которых будет храниться результат, и где-нибудь на внешней стороне функцию, которая будет обрабатывать два пришедших результата:
// считаем\выводим\ делаем что хотим с двумя пришедшими результатами
var count = function(goog, ya){
var average = ((goog + ya) / 2).toFixed(3);
alert(average);
};
(function(callback){
var goog, ya; // пришедшие результаты
goog.onLoad(function(request){ // <--- обработчик пришедшего результата для гугла
goog = request.data; // запоминаем значение
if(ya){ // и от яндекса уже пришел результат
callback(goog, ya);
}
});
YMaps.addEventListener("load", function(e){ // <--- обработчик результата от яндекса
ya = e.result; // запоминаем в переменной.
if(goog){ // от гугла уже пришел результат
callback(goog, ya);
}
});
})( count ); // <--- сюда передаёте её как аргумент.