猿问

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

我有以下字符串:


"[['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);

    } 


神不在的星期二
浏览 204回答 2
2回答

慕沐林林

您需要替换'为"然后解析&nbsp;'(.*?)'(?=(,|\])'(.*?)'- 匹配 ' 后跟任何零更多时间(懒惰模式)(捕获组 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)

慕田峪4524236

使用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);
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答