项目上一个模块有一个这样的需求,需要把表单form对象的值转换成字符串拼接到另一个表单上,下面先看下效果图。
这个是动态表单,需要填写值

这个图是转换后的数据

如表单是下面对象
let obj = {
id: 1,
name: '张三',
sex: '男'
}
你想转换成, id:1,name:张三,sex:男
如果你有类似的需求,只是拼接的数据格式不一样,修改一下即可
let arr = []
const keys = Object.keys(obj)
keys.forEach(key => {
arr.push([key, obj[key]].join(':'))
})
let str = arr.join(',')
console.log(str)
for inlet arr =[]
for(let key in obj){
arr.push(key+':'+obj[key])
}
let str = arr.join(',')
console.log(str)
这里需要了解的一些小知识,简单说一下
for in 循环 , 可以循环出对象里面的所有的key,(key就是属性名);
例:for(let key in obj) {}
Object.keys(指定的对象),该方法可以获取指定对象的所有key,返回值是一个数组;
Object.values(指定的对象),该方法可以获取指定对象的所有的value,返回值是一个数组;
对象转字符串: JSON.stringify(),转换后格式为 {‘id’: ‘11’, ‘name’: ‘张三’}
字符串转对象:JSON.parse()