且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

如何知道来自不同...的变量..."名称空间" ;?

更新时间:2022-12-08 10:47:16

当一个变量没有定义 var 时,它被认为存在于全局范围中。当你的JS加载到你的页面时,它意识到当时全局存在的任何变量。所以,谷歌正在做的是定义一些变量,然后加载到外部脚本。


How can I reach some variable declared in another place from within an external javascript file ?

Suppose in an html file I have the following

<head>
 <script>
   var a = 'something';
 </script>
<head>
<body>
<iframe src="otherfile.html"/>
</body>

and inside otherfile.html, in the section, I have

alert(a);

How can I make sure I get an alert message saying "something" ?

I think Google Adsense does this, their code is:

<script type="text/javascript"><!--
google_ad_client = "youdontneedtoknowthis";
google_ad_slot = "5404192644";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>

How can the script in http://pagead2.googlesyndication.com/pagead/show_ads.js know those variables (e.g. google_ad_client) ?

when a variable is defined without var it is said to exist in global scope. When your JS is loaded into your page, it is aware of any variables that exist globally at that time. So, what google is doing is defining some variables and then loading in an external script.