【问题标题】:How to convert environment variable to JSON object?如何将环境变量转换为 JSON 对象?
【发布时间】:2019-01-25 20:39:32
【问题描述】:

这是我的环境变量:

export DATA='{firstName: "OAMAR", lastName: "KANJI"}'

process.env.DATA 将其视为字符串,但像 JSON.parse(process.env.DATA) 这样的操作不起作用,因为对象中的键不是字符串。即像JSON.parse('{"firstName": "OAMAR", "lastName": "KANJI"}') 这样的东西可以工作,但这不是环境变量的形式。

关于如何将字符串转换为 JSON 的任何想法?

【问题讨论】:

  • JSON 中的字符串必须是双引号,而不是单引号,所以'OAMAR' 也是错误的。
  • 为什么不让你的环境变量成为有效的 JSON?唯一可以解析此类内容的内置内容是 eval(),但这很危险。
  • @Barmar 谢谢你,我会在我的问题中编辑它并做一个个人记录。至于输入有效的 json,当我获取 .env 文件时会返回错误
  • export DATA='{"firstName": "OAMAR", "lastName": "KANJI"}' 不应导致错误。

标签: javascript json environment-variables


【解决方案1】:
export DATA='{"firstName": "OAMAR", "lastName": "KANJI"}'

改变你的格式然后像这样使用

var foo =JSON.parse(DATA);

【讨论】:

    【解决方案2】:

    您可以尝试将您的字符串转换为有效的 JSON 字符串,然后将其改回 JSON

    const Data ='{firstName: "OAMAR", lastName: "KANJI"}';
    const output = JSON.parse(JSON.stringify(Data));
    console.log(output);

    【讨论】:

      猜你喜欢
      • 2017-01-05
      • 2016-08-08
      • 1970-01-01
      • 2021-11-04
      • 2021-11-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-28
      相关资源
      最近更新 更多