You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaScript中如何在JSON对象值中使用单个反斜杠

如何在JSON对象属性值中保留单个反斜杠?

先看你的代码场景:

var text = 'jeep\\sand';
console.log(text) // 返回 jeep\sand

这里text实际存储的就是带单个反斜杠的字符串,console.log(text)的输出已经证明了这一点。

但当把它放进对象后打印:

let js = { "key" : text }
console.log(js) // 返回 {key:"jeep\\sand"}

你期望输出{key:"jeep\sand"},这里要搞清楚两个核心点:

  1. 为什么显示双反斜杠?
    浏览器或Node.js在打印对象时,会展示字符串的内部转义表示,并非实际存储了双反斜杠——对象里的key值依然是单个反斜杠的字符串,只是打印对象时的格式化逻辑会把反斜杠转义后显示。

  2. 怎么得到期望的输出格式?
    如果你只是想在控制台看到{key:"jeep\sand"}这种视觉效果,可以手动拼接字符串输出:

    var text = 'jeep\\sand';
    let js = { "key" : text };
    console.log(`{key:"${text}"}`); // 输出 {key:"jeep\sand"}
    

    注意:严格的JSON语法要求字符串中的反斜杠必须转义(即双反斜杠),所以{key:"jeep\sand"}其实是不符合标准JSON规范的。如果你的需求是生成合法的JSON,那么双反斜杠是必须的,当你后续解析这个JSON时,会自动还原成单个反斜杠的字符串。

内容的提问来源于stack exchange,提问作者Johnson Anthony

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 14:35:20