JSFiddle - React, Tailwind, and code Playground

JavaScript

var data = [{
    "id": "11105",
    "name": "Gummy Drop (iPhone, Free, ROW except CN, 72.3MB, w"
}, {
    "id": "11107",
    "name": "Gummy Drop (iPad, Free, ROW except CN, 72.3MB, w\/ "
}, {
    "id": "4274",
    "name": "Z-Redirect Non-Targeted Traffic Dragon City Mobile"
}, {
    "id": "6484",
    "name": "Z-Redirect Non-Targeted Traffic Dragon City Mobile"
}];

var aColumns = [];

data.forEach(function (el) {    
    Object.keys(el).forEach(function (key) {
        if (!~aColumns.indexOf(key)) {
            aColumns.push(key);
        }
    })
})

aColumns = aColumns.map(function (key) {
    return {sTitle: key};
});

console.log(aColumns);