I'm working on a database, and it has different columns. How can I get value automatically without typing every column's name and not using eval()
?
Working method:
resultEl.append(
arg[i].name.toString() +
arg[i].size.toString() +
arg[i].price.toString() +
"<br/>")
I want this without eval:
const dataArray = ['name', 'size', 'price']
let resultEl = $("#result")
resultEl.text("")
for (var i = 0; i < arg.length; i++){
for (var j = 0; j < dataArray.length; j++){
const dataraw = arg[i] + "." + dataArray[j] + ".toString()";
resultEl.append(eval(dataraw))
}
}
arg
is a query from knex('table-name').select
Update
I was evaluating code with <br>
tag included and that was the reason it didn't work! However, I still appreciate a non-eval approach.