为了账号安全,请及时绑定邮箱和手机立即绑定

如何将字符串转换为对象数组?

如何将字符串转换为对象数组?

神不在的星期二 2022-05-22 15:52:03
我有以下字符串:"[['ABB','ACC','ADD'],['FGG','FHH','FJJJ'],['MNN','MOO','MPP']]"我想将它转换为对象数组[['ABB','ACC','ADD'],['FGG','FHH','FJJJ'],['MNN','MOO','MPP']]我尝试了很多事情,但我做不到        function nextQuess() {        var ffa = JSON.stringify("<%- hola %>");  // from ejs variable "[['ABB','ACC','ADD'],['FGG','FHH','FJJJ'],['MNN','MOO','MPP']]"        // var ff = JSON.parse([ffa])        // console.log('hello', ff);        console.log("Hello", ffa);    } 
查看完整描述

2 回答

?
慕沐林林

TA贡献2016条经验 获得超9个赞

您需要替换'为"然后解析


 '(.*?)'(?=(,|\])

'(.*?)'- 匹配 ' 后跟任何零更多时间(懒惰模式)(捕获组 1)

(?=(,|\]))- 匹配必须后跟,或]

let str = "[['ABB','ACC','ADD'],['FGG','FHH','FJJJ'],['MNN','MOO','MPP']]"


let replacedString = str.replace(/'(.*?)'(?=(,|\]))/g, "\"$1\"")

let final = JSON.parse(replacedString)


console.log(final)


查看完整回答
反对 回复 2022-05-22
?
慕田峪4524236

TA贡献1875条经验 获得超5个赞

使用JSON.stringify(json)然后JSON.parse()


let jsonString = JSON.stringify([['ABB','ACC','ADD'],['FGG','FHH','FJJJ'],['MNN','MOO','MPP']]);

let array = JSON.parse(jsonString);

console.log(array);


或者你也可以试试eval()方法


let jsonArray = eval([['ABB','ACC','ADD'],['FGG','FHH','FJJJ'],['MNN','MOO','MPP']]);

console.log(jsonArray);


查看完整回答
反对 回复 2022-05-22
  • 2 回答
  • 0 关注
  • 203 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号