使用javascript从脚本中提取文本

使用javascript从脚本中提取文本,javascript,reactjs,google-tag-manager,Javascript,Reactjs,Google Tag Manager,我在网页上有这样的脚本: <script> window.__INITIAL_STATE__ = {"meReducer":{"me":{"id":1234,"groupId":789,"},},//more code removed}; </script> 窗口.uuuu初始状态uuuu={“meReducer”:{“me”:{“id”:1234,“groupId”:7

我在网页上有这样的脚本:

<script>
    window.__INITIAL_STATE__ = {"meReducer":{"me":{"id":1234,"groupId":789,"},},//more code removed};
</script>

窗口.uuuu初始状态uuuu={“meReducer”:{“me”:{“id”:1234,“groupId”:789,},},//删除更多代码};
需要通过Google tag Manager启动一个标记,将“id”值存储为GTM变量


是否有任何javascript可以从另一个脚本中获取这样的文本?

在GTM中,创建一个“javascript变量”类型的新变量,在字段中,放入
窗口。\uu INITIAL\u STATE\uuu.meReducer.me.id
,这就好像您要在javascript中引用它一样,如下所示:

之后,您可以在其他标记中使用变量名(在我的示例中,我称之为“ME.ID”),请注意双括号:


您必须从另一个脚本获取它吗?该脚本将值分配给一个全局变量,因此您应该能够引用属性键(
window.\uuuu INITIAL\u STATE.\uuuuu.meReducer.me.id
).@isherwood很遗憾,是的。我没有权限修改页面本身,只能通过标记管理器进行修改。因此,我需要Google标记管理器中的某些东西在页面加载后将其抓取,并将其传递给另一个应用程序。@isherwood Oohhh,我知道你在说什么,并且正在接近。我可以看到
Object.values(window.\uuuu初始状态\uuuuu.meReducer.me)
返回一个值数组。现在我要弄清楚如何从其余的ID值中解析出该ID值。它仍然需要通过GTM启动,但这对我来说是一个巨大的进步。谢谢!!!我想你可以创建一个自定义javascript变量来获取窗口。u INITIAL_STATE_uu.meReducer.me.ID |