JSFiddle - React, Tailwind, and code Playground

JavaScript

var hash_a = {'foo': 'bar'};
var hash_b = {'alha': 'beta'};
var array = ['a', 'b', 'c'];

function build(a,b,c){
    var o=c.reduceRight(function(o, n){ var b={}; b[n]=o; return b; }, b);
    for(x in a){ o[x]=a[x]; }
    return o;
}

console.log(build(hash_a, hash_b, array));