数码资讯
深入分析Javascript全局变量VaR与非var的区别
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
我相信您一定熟悉全局变量。在函数的范围内,以a=1形式定义的变量将是一个全局变量。在全球范围内,可以使用以下3种形式创建全局可视命名。
复制代码代码如下所示:
var a = 1;
b=2;
窗口,C=3;
对于b = 2,它与C相同。在执行赋值语句时,它会找到范围链命名为B的变量。已发现范围链的顶部尚未找到,因此向窗口添加属性B并分配它。
var和非var有两个区别:
1个变量的全局变量不能被删除,因为删除智能移除对象的远程属性和定义的无功全局属性将被标记为不删除。需要说明的是,删除不成功,是不会错的,和返回值的删除是真的|假。
2 var定义的全局变量将被提升,而没有var定义的全局变量将不会被提升,您可以看到下面程序的执行结果:
复制代码代码如下所示:
警报(a);
var a=1;
复制代码代码如下所示:
警报(a);错误,未定义的
a = 1;
复制代码代码如下所示:
var a = 1;
b=2;
窗口,C=3;
对于b = 2,它与C相同。在执行赋值语句时,它会找到范围链命名为B的变量。已发现范围链的顶部尚未找到,因此向窗口添加属性B并分配它。
var和非var有两个区别:
1个变量的全局变量不能被删除,因为删除智能移除对象的远程属性和定义的无功全局属性将被标记为不删除。需要说明的是,删除不成功,是不会错的,和返回值的删除是真的|假。
2 var定义的全局变量将被提升,而没有var定义的全局变量将不会被提升,您可以看到下面程序的执行结果:
复制代码代码如下所示:
警报(a);
var a=1;
复制代码代码如下所示:
警报(a);错误,未定义的
a = 1;
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。