javascript中如何定义静态变量和全局变量?

javascript中如何定义静态变量和全局变量?,第1张

全局变量,作用域为所属的整个程序。
定义形式:
在函数外定义
在函数内定义,但是不加 var 声明。
使用 window变量名 的形式定义。(注:兼容性未知)
使用 window['变量名'] 的形式定义。(注:兼容性未知)
局部变量,作用域为所属的函数内部。
定义形式:
在函数内部定义的变量。
函数中用到的形式参数。
例子:
var a =0; //全局变量
b =0; //全局变量
function c() {
var d =0; //局部变量
e =0; //全局变量
return d;
}
consolelog(a); //0
consolelog(b); //0
consolelog(c()); //0
consolelog(e); //0
consolelog(d); //出错

首先js文件编码再引入页面中可以理解为就是对jquery进行了封装。让页面不至于被各种代码冗余,那样可读性很差,引入js文件到页面后,其实跟写在页面内部是一个效果,只是这样会更方便管理,增加可读性。那么基于这样的情况,两个
js文件里,如果先引入页面的js文件里定义了全局变量,那么第二个引入的js文件,对于前一个js所定义的全局变量,是可以进行修改。

<script>
var a=100;
function A(){return a--;}
function B(){setTimeout(A,2000);}
function C(){documentgetElementById("main")innerHTML='显示'+a+'变量'}
</script>
<button onClick=B()>按钮1</button>
<button onClick=C()>按钮2</button>
<div id="main"></div>

写在方法外就是全局变量
我估计你是想问 在页面之间可以互相传输的变量吧?
全局变量默认为window的成员,window即代表浏览器窗口
全局变量均为window的属性
函数均为window的方法
所以,直接调用window下面的变量就可以啦

function select(str,place){
    var point = new BMapPoint(116331398,39897445);
    var apoint ;                            //全局变量!!!
    var myGeo = new BMapGeocoder();
    myGeogetPoint(place, function(point){ 
        if (point) { 
            mapcenterAndZoom(point, 10);
            mapaddOverlay(new BMapMarker(point));
        }
        apoint = point;    //赋值给全局变量!!!
        
        //在这里才能获得point的值,应该将对point的 *** 作放到这里
        //如果要将point赋值给其它变量,应该赋值后再通知其它函数
        
    }, "北京市");
    // getPoint的执行可能不会立即完成,所以此时还没有执行apoint = point;这一句,所以apoint也没有被赋值,所以到这里apoint不一定有值
alert(apointlng + ", " +apointlat);      //输出全局变量!!
        //apoint的两个值在这里输出为空~!(如果在全局变量处给apoint赋值就会有)
}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/10533079.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-09
下一篇 2023-05-09

发表评论

登录后才能评论

评论列表(0条)

保存