Skip to content

Instantly share code, notes, and snippets.

@kissmygritts
Created October 8, 2016 03:28
Show Gist options
  • Save kissmygritts/9994f51d6d9bf5e8b6c64f26dd749846 to your computer and use it in GitHub Desktop.
Save kissmygritts/9994f51d6d9bf5e8b6c64f26dd749846 to your computer and use it in GitHub Desktop.
var rq = {
"mark_type": [
"Ear Tag",
"Ear Tag",
"Pit Tag"
],
"mark_id": [
"123",
"567",
"12348981723"
],
"mark_color": [
"Green",
"Yelloq",
"NA"
],
"mark_location": [
"Right Ear",
"Left Ear",
"Shoulders"
],
"date_given": [
"2016-10-07",
"2016-10-07",
"2016-10-07"
],
"mark_removed": [
"2016-10-28",
"2016-10-28",
""
]
}
var mark = [];
rq.mark_type
// Object.keys(rq).forEach(function(key) {
// // console.log(key, rq.mark[key]);
// rq[key].forEach(function(r) {
// console.log(key + r);
// });
// });
// console.log(Object.keys(rq).length);
// var n = 0;
// while (n < Object.keys(rq).length - 1) {
// console.log(Object.keys(rq)[n] + ": " + " " + rq[Object.keys(rq)[n]]);
// n++;
// }
// console.log(Object.keys(rq)[0] + ": " + rq[Object.keys(rq)[0]][0]);
// var markOne = {"mark_type": null,
// "mark_id": null
// };
// markOne[Object.keys(markOne)[0]] = rq[Object.keys(rq)[0]][0];
// markOne;
// var markOne = { "mark_type": rq[Object.keys(rq)[0]][0],
// "mark_id": rq[Object.keys(rq)[1]][0]};
// rq[Object.keys(rq)[1]];
// var expected = [
// {mark_type: "ear tag", mark_id: 123},
// {mark_type: "pit tag", mark_id: 789}
// ];
// expected
/* working iteration that returns the proper [key: value] structure
for the object */
// var n = 0;
// while (n < rq[Object.keys(rq)[0]].length) {
// var m = 0;
// while (m < Object.keys(rq).length) {
// // console.log(n + ": " + m);
// console.log(Object.keys(rq)[m] + ": " + rq[Object.keys(rq)[m]][n])
// m++;
// }
// // console.log(rq[Object.keys(rq)[0]][n]);
// n++;
// }
function parseDynamicContent(rq) {
var n = 0;
var dat = [];
while (n < rq[Object.keys(rq)[0]].length) {
var m = 0;
var obj = {};
while (m < Object.keys(rq).length) {
var val = rq[Object.keys(rq)[m]][n];
if (val == '') {
val = null
}
obj[Object.keys(rq)[m]] = val
m++;
}
dat.push(obj)
n++;
}
return dat;
}
console.log(JSON.stringify(parseDynamicContent(rq), null, '\t'));
// Object.keys(rq); // Object keys (field names for sequelize)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment