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

JavaScript中如何将含单引号的JSON字符串转换为列表?

单引号类JSON字符串转列表的解决方案

你遇到的报错是因为标准JSON要求字符串必须用双引号包裹,你的输入属于JS/Python的数组字面量语法,不符合JSON规范,所以JSON.parse无法直接解析,可根据使用的编程语言选择对应方案:

JavaScript 环境

  • 方案1:替换单引号后解析(仅适用于字符串内容中无嵌套单引号的场景)
const rawStr = "[[1, 'group1', '#5bc6e1'], [2, 'group2', '#8ec936']]";
// 替换所有单引号为双引号
const standardJsonStr = rawStr.replaceAll("'", '"');
const resultList = JSON.parse(standardJsonStr);
  • 方案2:字面量直接解析(适用于所有符合JS语法的输入,要求输入来源完全可控,避免恶意代码执行风险)
const rawStr = "[[1, 'group1', '#5bc6e1'], [2, 'group2', '#8ec936']]";
const resultList = new Function(`return ${rawStr}`)();

Python 环境

使用ast.literal_eval安全解析,无需处理引号,同时避免代码注入风险:

import ast

raw_str = "[[1, 'group1', '#5bc6e1'], [2, 'group2', '#8ec936']]"
result_list = ast.literal_eval(raw_str)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 20:57:01