我试图将数组存储在StriptProperties中,将其转换为字符串并以这种方式恢复:

var personDataArr = ["Adam", "male", "programmer"];
function myFunction() {
  var personDataStr = JSON.stringify(personDataArr);
  ScriptProperties.setProperty('personData', personDataStr);
  var personData = ScriptProperties.getProperty('personData');
  personData = JSON.parse("[" + personData + "]");
  Logger.log("personData[0] = " + personData[0]);
}


但是,当我登录Logger.log("personData[0] = " + personData[0]);时,我得到的是personData[0] = Adam,male,programmer而不是Adam。为什么?相反,如何获取数组的第一个元素?

最佳答案

您需要从[]函数中删除方括号(JSON.parse):

personData = JSON.parse( personData );


发生这种情况是因为您创建了多维数组蚂蚁,最终结果显示为:

[["Adam", "male", "programmer"]]


这就是为什么该数组的0索引为您返回Array而不是Adam值的原因

关于javascript - 如何在此示例代码(字符串到数组)中正确使用JSON.parse?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21499005/

10-12 01:33
查看更多