let params = {
order_detail: [
{
hello: "word",
b: 1231,
price: 1122
},
1,
3
],
pricelog: {
1008: {
name: "nicolana"
}
}
}
function formateRequestParams(data, exKey="") {
if (!(data instanceof Object)) return;
let params = {}
for (const key in data) {
const item = data[key]
if (typeof item === 'string' || typeof item === 'number') {
let realKey = exKey ? ${exKey}[${key}]
: key
params[realKey] = data[key]
} else if (item instanceof Object) {
let subRealKey = exKey ? ${exKey}[${key}]
: ${key}
Object.assign(params, formateRequestParams(item, subRealKey))
}
}
return params
}
console.log(formateRequestParams(params))
输出结果:
PS C:\Users\juniv\Desktop> node .\format.js
{
'order_detail[0][hello]': 'word',
'order_detail[0][b]': 1231,
'order_detail[0][price]': 1122,
'order_detail[1]': 1,
'order_detail[2]': 3,
'pricelog[1008][name]': 'nicolana'
}
暂无评论