JS中如何将对象转换为无引号无分隔符的纯字符串?
解决JavaScript对象转无分隔符纯字符串的问题
要实现把对象转成无引号、逗号、冒号的纯拼接字符串,核心是把每个键和对应的值直接连起来,再把所有键值对片段合并,注意要和示例输出一致的话,得先按键名排序,具体代码如下:
const myObj = { cf_retryAttempts:0, cf_amount:1, cf_event:"SUBSCRIPTION_NEW_PAYMENT", cf_eventTime:"2022-01-10 10:03:50", cf_paymentId:1, cf_referenceId:2, cf_subReferenceId:3, }; // 按键名排序后拼接所有键值对 const targetString = Object.keys(myObj) .sort() .map(key => `${key}${myObj[key]}`) .join(''); console.log(targetString);
代码说明:
- 用
Object.keys(myObj)提取对象所有属性名 .sort()对属性名做字母排序,保证输出顺序和示例一致.map()遍历每个属性,把属性名和对应值直接拼接(不管值是数字还是字符串,都会自动转为字符串类型).join('')把所有拼接好的片段连在一起,无任何分隔符
运行后就能得到你要的结果:cf_amount1cf_eventSUBSCRIPTION_NEW_PAYMENTcf_eventTime2022-01-10 10:03:50cf_paymentId1cf_referenceId2cf_retryAttempts0cf_subReferenceId3
内容的提问来源于stack exchange,提问作者Vedant Sonkar
相关产品推荐
相关产品推荐

