vscode默认不支持json文件注释,需切换为jsonc模式;可通过修改文件关联、设置files.associations或直接使用.jsonc后缀实现,但运行时需预处理为标准json。

VSCode 默认不支持 JSON 文件里的注释——不是你写错了,是标准 JSON 本来就不允许注释。想加 // 或 /* */,必须切换到 JSONC(JSON with Comments)模式,并确保文件后缀或语言模式正确识别。
怎么让 VSCode 把 .json 文件当 JSONC 解析
VSCode 不会自动把 .json 文件当作 JSONC 处理,哪怕里面写了注释也不会高亮或校验通过。关键在「语言模式」设置:
- 打开任意
.json文件 → 右下角点击当前语言标识(如JSON)→ 点击「Configure File Association for '.json'」→ 选择JSONC - 或者更稳妥:右键文件标签 → 「Change Language Mode」→ 输入
jsonc→ 回车确认 - 注意:这个设置只对当前工作区生效;若要全局生效,需在用户设置里修改
files.associations,添加"*.json": "jsonc"
为什么改了语言模式还是报错“Comments are not permitted”
常见于两种情况:
- 你用的是严格 JSON 验证器(比如 ESLint 的
jsonc-eslint-parser没配,或用了json而非jsonc解析器) - VSCode 的内置 JSON 校验仍启用 —— 进入设置搜
json.validate,关掉JSON > Validate,或仅对.jsonc文件启用 - 某些插件(如 Prettier)默认按
json格式格式化,会删注释;需在.prettierrc中加"parser": "json-stringify"或改用json5,但更推荐直接用.jsonc后缀区分
用 .jsonc 后缀比改关联更可靠吗
是的。VSCode 对 .jsonc 后缀有原生、无歧义的支持:
- 新建文件时保存为
config.jsonc,语言模式自动设为JSONC,注释高亮、折叠、语法检查全开 - 不需要额外配置
files.associations,避免影响其他项目里真正的 JSON 文件 - 但要注意:后端服务读取时可能不认
.jsonc—— 构建流程中得用工具(如jsonc-parser库)预处理成纯 JSON,不能直接扔给JSON.parse()
真正容易被忽略的是:JSONC 是 VSCode 的编辑体验增强,不是标准升级。只要文件要交给其他系统解析,就得剥离注释——别指望运行时能吃下带 // 的内容。











