【问题标题】:JSON.parse string with undefinedJSON.parse 字符串未定义
【发布时间】:2021-03-11 23:57:22
【问题描述】:

在我的 NodeJS 应用程序中,我从 kafka 接收消息,消息作为缓冲区到达,所以我这样做:

let myMsg = kafkaMessage.message.value.toString();

myMsg 现在是String,我对以下字符串有疑问:

"{
  "Data": {
    "a": undefined,
    "b": undefined,
    "c": {
      "d": undefined,
      "e": undefined,
      "f": [
        0,
        0,
        0
      ]
    },
  },
  "g": {
    "h": 598972702657,
    "i": "abcd",
  },
  "time": "2018-12-24T13:18:22.6577119"
}"

当我尝试执行 JSON.parse(myMsg) 时它失败了,因为某些值未定义。 没有未定义的消息传递成功

【问题讨论】:

    标签: node.js json kafka-consumer-api


    【解决方案1】:

    这里解释了 JSON.parse() 方法失败的原因:How does JSON.parse manage 'undefined'?

    一种可能的解决方法是在调用 JSON.parse() 方法之前,将 myMsg 字符串中的所有“未定义”子字符串替换为“null”。

    【讨论】:

    • 你也可以分享kafkaMessage.message.value而不把它变成一个字符串吗?
    • 它的缓冲区,你还能做什么?
    猜你喜欢
    • 2019-09-15
    • 1970-01-01
    • 1970-01-01
    • 2020-08-07
    • 2015-01-19
    • 1970-01-01
    • 2013-02-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多