无法使用javascript访问脚本标记中存在的变量值

无法使用javascript访问脚本标记中存在的变量值,javascript,Javascript,我试图访问脚本标记中存在的变量的值。但我无法检索该值。我尝试了几种方法,但没有得到预期的结果。 我需要得到的价值观和解析,并做一些操作,但我从早上就被阻止了,你能请人帮我一下吗?这毁了我的时间 var scriptTag=document.getElementsById'test'; console.logscriptTag.window[ytInitialData]//显示未定义的 console.logscriptTag.getAttributeWindow[ytInitialData];

我试图访问脚本标记中存在的变量的值。但我无法检索该值。我尝试了几种方法,但没有得到预期的结果。 我需要得到的价值观和解析,并做一些操作,但我从早上就被阻止了,你能请人帮我一下吗?这毁了我的时间

var scriptTag=document.getElementsById'test'; console.logscriptTag.window[ytInitialData]//显示未定义的 console.logscriptTag.getAttributeWindow[ytInitialData];//显示空值 窗口[初始数据]={ 答复正文:{ serviceTrackingParams:[{ 服务:GFEEDBACK }] } }; 窗口[YnitialPlayerResponse]={ 答复正文:{ serviceTrackingParams:[{ 服务:GFEEDBACK }] } }; 如果window.ytcsi{ window.ytcsi.tickpdr,null; } window对象是全局对象,可以从页面上的任何脚本访问,因此请按如下方式设置window属性:

window.ytInitialData = {
    "responseContext": {
      "serviceTrackingParams": [{
        "service": "GFEEDBACK"
      }]
   }
}
ytInitialData是字符串文字,因此可以使用点表示法而不是方括号

然后以相同的方式在脚本中的任何位置再次访问它:

console.log(window.ytInitialData)
window.ytInitialData={ 答复正文:{ serviceTrackingParams:[{ 服务:GFEEDBACK }] } } console.logwindow.ytInitialData在脚本中将其引用为window[ytInitialData]。所以在任何地方都将其引用为window[ytInitialData]。窗口是全局的。您根本不需要获取脚本标记,它也是getElementById,而不是getElementsById。