从Array动态创建变量到Ajax成功



嗨,从ajax调用中获得这个each

$.each(data.my_json, function(i, item) {
const op_id             = item.op_id;
const op_name           = item.op_name;
let  nv_tmp_totals      = item.nv_tmp_totals;
let nvc_tmp_totals      = item.nvc_tmp_totals;
let  iniz_totals        = item.iniz_totals;
let deft_totals         = item.deft_totals;
let rmkt_totals         = item.rmkt_totals;
let nv_tmp_average      = item.nv_tmp_average;
let nvc_tmp_average     = item.nvc_tmp_average;
let iniz_average        = item.iniz_tmp_average;
let deft_average        = item.deft_tmp_average;
let rmkt_average        = item.rmkt_tmp_average;
})

我想使用变量的循环来减少我的代码。显然,在这种情况下,循环重复了几次,不起作用

const source = ['rmkt', 'iniz', 'deft','nvc_tmp','nv_tmp'];
$.each(data.my_json, function(i, item) {
const op_id         = item.op_id;
const op_name       = item.op_name;
for (let i=0; i<source.length; i++) {

window[source[i]+"_totals"]  = parseFloat(item.source[i]+"_totals")

window[source[i]+"_average"]  = parseFloat(item.source[i]+"_average")

}
})

你的意思是这样的吗?

$.each(data.my_json, function(i, item) {
Object.assign(window, item)
})

window对象现在将具有item中的所有属性。

Object.assign((的MDN

最新更新