首页 > 解决方案 > 将字符串化的 JSON 注入脚本

问题描述

我有一个定义myfile.js,其中包含一个如下所示的 JavaScript 对象:

module.exports = {
  key: 'This can\'t be true',
},

我正在尝试将script标签注入 HTML,做这样的事情

const object = require('./myfile.js');
const stringified = JSON.stringify(object);
const inject = `<script>window.parsed = JSON.parse('${stringified}');<script />`

当我尝试使用注入的脚本打开 HTML 文件时,它会记录一个与 JSON 相关的错误——它在解析它时遇到了问题。然而,当我\'从句子中删除时,根本没有问题——见下文:

module.exports = {
  key: 'This cant be true',
},

我的问题是——我怎样才能使用撇号并且仍然能够将它注入到脚本中?或者,在将 JSON 传递给 HTML 时,我应该考虑其他一些方法?

标签: javascripthtmljson

解决方案


推荐阅读