美文网首页
将数组的value取出,变成新数组的key

将数组的value取出,变成新数组的key

作者: 大T的随手记 | 来源:发表于2019-12-25 22:32 被阅读0次

场景:给URL拼接参数,假设URL声明:http://www.xx.com?a={a}&b={b}&c={c},取用户填写的值set到变量中

将数组的value取出,变成新数组的key

页面表单:

a: 我是A输入的值

b: 我是B

c: 我是C

求出:http://www.xx.com?a=我是A输入的值&b=我是B&c=我是C


思路:

获取表单数据:

const formData = [{ name: 'a', dateForm: 'valueA'},{ name: 'b', dateForm: 'valueB'}]

取出name的值做为新数组的key,dateForm作为value,如: { {a}:'valueA', {b}:'valueB',...},再与url匹配替换。


代码:

let objList = {}

for (let item in formData){

    objList[`{ ${formData[item].name} }`] = formData[item].dateForm || '' // 没有dateForm值时置空或用其他值替代,避免传undefined

}

let url = http://www.xx,com?a={a}&b={b}&c={d}

url = url.replace(/(\{[\w\u4e00-\u9fa5]+\})/ig,function($1) {

    return objList[$1]

})

console.log(url) // http://www.xx,com?http://www.xx,com?a=我是A输入的值&b=我是B

有更好的方法欢迎留言讨论

相关文章

网友评论

      本文标题:将数组的value取出,变成新数组的key

      本文链接:https://www.haomeiwen.com/subject/akyhoctx.html