JSON解析不能处理html脚本元素

时间:2017-02-01 16:33:40

标签: javascript html json parsing

我正在尝试将HTML元素中脚本的内容转换为JSON。但问题是并非所有的键都有引号。这是脚本:

{
  route: "PDFilter",
  websiteId: "52",
  lang: "us",
  layout: {
    PDPage: {
      Banner: 1,
      Spotlight: 1,
      HotProduct: 1,
      ContentSource: 0,
      SocialMedia: 0,
      ScenarioFilter: 1,
      CategoryHotProduct: 1,
      CategoryHotProduct_9: 0
    },
    PDPageSort: [
      "Banner",
      "Spotlight",
      "ScenarioFilter",
      "HotProduct",
      "CategoryHotProduct"
    ]
  },
  product: {
    l2id: "1",
    l3id: "20501",
    pdid: "0",
    layoutType: "2",
    theme: 1,
    IsCommercial: 0,
    bannerIsRoller: 0
  },
  productLine: {
    MDA: {
      Html: "",
      Image: ""
    },
    blackVersion: 0,
    rogVersion: 0
  },
  env: "prod",
  breadcrumb: {
    Home: {
      LevelName: "Home",
      Link: "//www.asus.com/us/"
    },
    L2: {
      LevelName: "Phones",
      Link: "//www.asus.com/us/Phone/"
    },
    L3: {
      LevelName: "ZenFone",
      Link: "//www.asus.com/us/Phone/ZenFone-Products/"
    }
  }
}

解析表示期待一个字符串,但该脚本具有正确的JSON格式。

1 个答案:

答案 0 :(得分:0)

当您使用JSON.parse时,您正在使用JSON.stringifyJSON.parse用于将JSON字符串转换为JavaScript对象,而JSON.stringify用于将JavaScript对象转换为JSON字符串。