javascript全局变量

关于javascript全局变量的问题,如下,一个页面,两段script,第二段中到了全局变量map, 开始时在第二段一直说找不到map.

<script type="text/javascript">
$(document).ready(
function () {
var map =new BMap.Map("container"); // 创建地图实例
var point =new BMap.Point(116.404, 39.915); // 创建点坐标
map.centerAndZoom("北京"); // 初始化地图,设置中心点坐标和地图级别
</script>
<script type="text/javascript">
$(document).ready(
function () {
var point =new BMap.Point(@item.Lon, @item.Lat);
var mark =new BMap.Marker(point), px = map.pointToPixel(point);
map.addOverlay(mark);
});
</script>

在网上找到如下文章, "要使变量为全局,不能用var去声明,直接用变量去使用就行."

http://topic.csdn.net/u/20071107/21/551cecc8-cc30-4973-8655-a8731c7f3e54.html

我读了《js局部变量/全局变量》一文,地址如下 
http://www.cnblogs.com/simhare/archive/2007/08/25/869440.html
文 中说“在js中如果用var来定义一个变量,如果该变量被定义在function或者其他循环体内,则变量为局部变量,并且该变量不会受到同名全局变量的 影响,也不会影响同名的全局变量。如果不用var来定义变量而直接拿一个变量来使用则该变量会被自己定义为全局变量,无论该变量被定义在任何位置,如果在function或者循环体内用这种方式来定义变量,则该变量为全局变量若function或循环体外已经定义了同名的全局变量,则会直接引用function或循环体外定义的全局变量

原文地址:https://www.cnblogs.com/hurner/p/2033877.html