javascript-解析html注释中的键值json
我有一个带有单行javascript注释的html页面,如下所示:javascript-解析html注释中的键值json,javascript,jquery,html,regex,Javascript,Jquery,Html,Regex,我有一个带有单行javascript注释的html页面,如下所示: // {"key1":"value1"}, {"key2":"value2"}, {"key3":"value3"} <b> Sample Text </b> /{“key1”:“value1”}、{“key2”:“value2”}、{“key3”:“value3”} 示例文本 我想检索注释中的所有键值对,并将它们放在javascript映射中。如何使用js/jquery解析它?我在正则表达式方面很
// {"key1":"value1"}, {"key2":"value2"}, {"key3":"value3"}
<b> Sample Text </b>
/{“key1”:“value1”}、{“key2”:“value2”}、{“key3”:“value3”}
示例文本
我想检索注释中的所有键值对,并将它们放在javascript映射中。如何使用js/jquery解析它?我在正则表达式方面很糟糕,所以任何帮助都将不胜感激。如果有帮助,注释将始终只是html中的第一行
编辑:
如果这能让工作更容易,我也可以和你一起工作-
/* {"key1":"value1"}, {"key2":"value2"}, {"key3":"value3"} */
<b> Sample Text </b>
/*{“key1”:“value1”},{“key2”:“value2”},{“key3”:“value3”}*/
示例文本
您可以使用jQuery函数parseJSON
比如:
然后,您可以将该值写入html,您可以使用jQuery函数parseJSON 比如: 然后可以将该值写入html
{“(\w+?)”:“(\w+?)”}
这将抓住你的关键和价值。键在组1中,值在组2中
对于Javascript,raynjamin指出需要使用/g
修饰符来匹配键值对的所有实例
.{(\w+?):“(\w+?)”}
这将抓住你的关键和价值。键在组1中,值在组2中
对于Javascript,raynjamin指出需要使用/g
修饰符来匹配键值对的所有实例
<!-- HTML -->
<head>
<script type="text/javascript">
var x = { "key1": "value1", "key2": "value2", "key3": "value3" } ;
</script>
</head>
<!-- REST OF HTML -->
var x={“key1”:“value1”,“key2”:“value2”,“key3”:“value3”};
您应该可以像访问任何其他javascript对象一样使用数据访问x。不要将javascript写入HTML的顶部,而是将其写入脚本元素中,如下所示:
<!-- HTML -->
<head>
<script type="text/javascript">
var x = { "key1": "value1", "key2": "value2", "key3": "value3" } ;
</script>
</head>
<!-- REST OF HTML -->
var x={“key1”:“value1”,“key2”:“value2”,“key3”:“value3”};
您应该可以像访问任何其他javascript对象一样使用数据访问x。为什么在标记中有javascript注释?这个数据在页面加载后不能被检索,或者至少不能被放入一个脚本标记中吗?不能。它的html数据是从服务器检索的。如果你有权访问正在生成的html,我会说至少将它改为写入一个脚本标记,而绝对不能写入标记的顶部。对我来说,这似乎是一种非常奇怪的做法。这只是一种暂时的恶作剧。如果我把它放在一个脚本标记中,我将如何处理它呢?如果你把脚本标记放在头部,你可以只写var x=[{“key1”:“value1”},{“key2”:“value2”},{“key3”:“value3”},然后你就可以用x[0],x[1],x[2]访问你的键值对。但是,您可能需要类似于{“key1”:“value1”,“key2”:“value2”,“key3”:“value3”}的数组,而不是数组。为什么在标记中有javascript注释?这个数据在页面加载后不能被检索,或者至少不能被放入一个脚本标记中吗?不能。它的html数据是从服务器检索的。如果你有权访问正在生成的html,我会说至少将它改为写入一个脚本标记,而绝对不能写入标记的顶部。对我来说,这似乎是一种非常奇怪的做法。这只是一种暂时的恶作剧。如果我把它放在一个脚本标记中,我将如何处理它呢?如果你把脚本标记放在头部,你可以只写var x=[{“key1”:“value1”},{“key2”:“value2”},{“key3”:“value3”},然后你就可以用x[0],x[1],x[2]访问你的键值对。但是,您可能需要更像{“key1”:“value1”,“key2”:“value2”,“key3”:“value3”}的数组,而不是数组。不要忘记使用/g来匹配所有实例。那么我们如何从字符串开始呢?不要忘记使用/g来匹配所有实例。那么我们如何从字符串开始呢?