求教一个json对象用原生方法转成url拼接参数?

一个未知格式的对象,现在只能勉强使用jquery的each来递归实现。如果使用原生方法该如何实现??求教。
varobj={
"test":123123,
"fruit":'535',
"book":{
'aaa':456,
'bbb':789,
'ccc':{
'asd':333,
'af':true
}
}
}
exportconstparseParam=function(param,key,prefix){
//prefix是否带"&"连接符前缀
letparamStr=prefix?"&":"";
if(paraminstanceofString||paraminstanceofNumber||paraminstanceofBoolean){
paramStr+=`&${key}=${encodeURIComponent(param)}`
}else{
//这里使用$.each勉强实现
$.each(param,function(i){
letk=key===null?i:key+(prefix?i:`.${i}`);
paramStr+=`&${parseParam(this,k)}`;
});
}
returnparamStr.substr(1);
};
//这里的key和prefix参数没有处理好,不知怎样写可以更规范一些
console.log(parseParam(obj,'',true))
慕雪6442864
浏览 510回答 2
2回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript