Yandex Test

by Anton Kolesnikov

HTML

<!-- https://gist.github.com/verkholantsev/4d14ce053b009dac1225 -->

JavaScript

/**
 * Реализация API, не изменяйте ее
 * @param {string} url
 * @param {function} callback
 */
function getData(url, callback) {
    var RESPONSES = {
        '/countries': [
            {name: 'Cameroon', continent: 'Africa'},
            {name :'Fiji Islands', continent: 'Oceania'},
            {name: 'Guatemala', continent: 'North America'},
            {name: 'Japan', continent: 'Asia'},
            {name: 'Yugoslavia', continent: 'Europe'},
            {name: 'Tanzania', continent: 'Africa'}
        ],
        '/cities': [
            {name: 'Bamenda', country: 'Cameroon'},
            {name: 'Suva', country: 'Fiji Islands'},
            {name: 'Quetzaltenango', country: 'Guatemala'},
            {name: 'Osaka', country: 'Japan'},
            {name: 'Subotica', country: 'Yugoslavia'},
            {name: 'Zanzibar', country: 'Tanzania'},
        ],
        '/populations': [
            {count: 138000, name: 'Bamenda'},
            {count: 77366, name: 'Suva'},
            {count: 90801, name: 'Quetzaltenango'},
            {count: 2595674, name: 'Osaka'},
            {count: 100386, name: 'Subotica'},
            {count: 157634, name: 'Zanzibar'}
        ]
    };
 
    
        var result = RESPONSES[url];
        if (!result) {
            return callback('Unknown url');
        };
        callback(null, result);
}
 
/**
 * Ваши изменения ниже
 */
var requests = ['/countries', '/cities', '/populations'];
var responses = {};
var l = [];

var callback = function(error, result) {
    responses[request] = result;
    
    /* ждем три ответа и записываем в массив */
    l.push(result);
    
    if (l.length === 3) {
        var c = [], cc = [], p = 0;
        
        /* перебираем страны и ищем Африку */
        for (var i=0; i<responses['/countries'].length; i++){
            /* Если континент Африка, то ... */
            if (responses['/countries'][i].continent === 'Africa') {
                /* ... по этой стране ищем города в ней */                
       ...