jquery - Need to map keys to parameters in JSON body -
this question has answer here:
- rename keys in object 8 answers
i need send http api json in body like:
var body = { 'param1': 'param1 value', 'param2': 'param2 value', 'param3': 'param3 value', 'param4': 'param4 value', 'param5': 'param5 value', 'param6': 'param6 value' }; but source have build is
var datasource = { 'x4001': 'param1 value', 'jd5jj': 'param2 value', 'mmmmmoose': 'param3 value', 'simple': 'param4 value', 'crayonx3': 'param5 value', 'hubbabubba': 'param6 value' }; there must quick jquery replace/map function create 'body' variable datasource json - 'x4001' becomes 'param1', 'jd5jj' becomes 'param2', etc., etc. body crave?
in other answers i've seen, see things like:
function renameproperty(obj, fromkey, tokey) { obj[tokey] = obj[fromkey]; delete obj[fromkey]; } addobjectresponse.foreach(obj => renameproperty(obj, 'sp02', 'o2')); but javascript / jquery doesn't understand anything => in - (which looks linq statements c#).
so - either i'm using wrong jquery, or need different solution?
since you're renaming keys in datasource, it's simplest define "key map" , use new names old:
var keymap = { x4001: "param1", jd5jj: "param2", mmmmmoose: "param3", simple: "param4", crayonx3: "param5", hubbabubba: "param6" }; var datasource = { x4001: "param1 value", jd5jj: "param2 value", mmmmmoose: "param3 value", simple: "param4 value", crayonx3: "param5 value", hubbabubba: "param6 value" }; var body = {}; (var key in datasource) body[keymap[key]] = datasource[key]; console.log(body);
Comments
Post a Comment