如何将对象内容转换为数组键为0的首个字符串元素?
把JavaScript对象转为字符串并作为数组首位元素的实现方法
步骤说明
要实现需求,核心是用JSON.stringify()方法把对象序列化为JSON字符串,再将该字符串放到数组的索引0位置。另外注意:原始对象中带连字符的属性名必须用引号包裹,否则会触发JavaScript语法错误。
修正后的原始对象代码
const obj1 = { "all-exception": [], "root-exception": "java.util.concurrent.CompletionException\n", timestamp: 1671113624318, truncated: false };
处理代码
// 将对象转为JSON格式字符串,自动处理转义字符与特殊属性名 const serializedStr = JSON.stringify(obj1); // 创建数组,把字符串放在索引0的位置 const obj2 = [serializedStr];
最终效果
执行后obj2的结构如下:
const obj2 = [ "{\"all-exception\":[],\"root-exception\":\"java.util.concurrent.CompletionException\\n\",\"timestamp\":1671113624318,\"truncated\":false}" ];
补充说明
JSON.stringify()会自动处理字符串中的特殊字符(比如换行符\n会被转义为\\n)- 带连字符等特殊符号的属性名,会被自动包裹在双引号中,符合JSON格式规范
内容的提问来源于stack exchange,提问作者user3594118
相关产品推荐
相关产品推荐

