一个js输出格式的奇葩需求?
下面是拿到的数据,
let data={name:'寅春树',sex:"男",age:25,address:"中国洛阳"}
下面的是需要输出的文本格式 {name},{sex}{age}
文本格式是通过接口拿到的,我现在想输出以文本格式那样的格式,也就是寅春树,男25
我考虑用‘模板字符串’但发现不行,因为格式是接口后来拿到的,没办法直接用模板字符串,有大神有办法吗?文本格式预先不知道,是接口拿的,这只是一个格式,也可能是其它格式,这种情况下怎么按格式输出对应的值。
回复
1个回答

test
2024-09-07
let data = { name: '寅春树', sex: "男", age: 25, address: "中国洛阳" };
let str = '{name},{sex},{age}';
let result = str.replace(/\{(\w+)\}/g, (match, key) => {
if (data.hasOwnProperty(key)) {
return data[key];
}
return match;
});
回复

适合作为回答的
- 经过验证的有效解决办法
- 自己的经验指引,对解决问题有帮助
- 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
- 询问内容细节或回复楼层
- 与题目无关的内容
- “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容