参数值
ottom: 0px; border-left: 0px; padding-bottom: 0px; widows: 1; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 4px 0px; padding-left: 0px; width: 729px; letter-spacing: normal; padding-right: 0px; border-collapse: collapse; font: 12px 'Open Sans','Helvetica Neue',Helvetica,Arial,STHeiti,'Microsoft Yahei',sans-serif; white-space: normal; color: rgb(51,51,51); border-top: 0px; border-right: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">
ottom: 0px; border-left: 0px; padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; border-top: 0px; border-right: 0px; padding-top: 0px">
ottom: 0px; border-left: 0px; padding-bottom: 0px; background-color: rgb(246,244,240); margin: 0px; padding-left: 0px; padding-right: 0px; border-top: 0px; border-right: 0px; padding-top: 0px">
ottom: rgb(85,85,85) 1px solid; text-align: left; border-left: rgb(85,85) 1px solid; padding-bottom: 3px; background-color: rgb(85,85); margin: 0px; padding-left: 3px; width: 160px; padding-right: 3px; color: rgb(255,255); font-size: 12px; vertical-align: top; border-top: rgb(85,85) 1px solid; border-right: rgb(85,85) 1px solid; padding-top: 3px">参数 |
ottom: rgb(85,85); margin: 0px; padding-left: 3px; padding-right: 3px; color: rgb(255,85) 1px solid; padding-top: 3px">描述 |
ottom: 0px; border-left: 0px; padding-bottom: 0px; background-color: rgb(255,255); margin: 0px; padding-left: 0px; padding-right: 0px; border-top: 0px; border-right: 0px; padding-top: 0px">
ottom: rgb(212,212,212) 1px solid; border-left: rgb(212,212) 1px solid; padding-bottom: 7px; margin: 0px; padding-left: 5px; padding-right: 5px; font-size: 1em; vertical-align: top; border-top: rgb(212,212) 1px solid; border-right: rgb(212,212) 1px solid; padding-top: 7px">ottom: 0px; border-left: 0px; padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; border-top: 0px; border-right: 0px; padding-top: 0px">varname | ottom: rgb(212,212) 1px solid; padding-top: 7px">必须。指定变量名。
ottom: 0px; border-left: 0px; padding-bottom: 0px; line-height: 2em; margin: 0px; padding-left: 0px; padding-right: 0px; font-family: 'Microsoft Yahei',sans-serif; font-size: 12px; border-top: 0px; border-right: 0px; padding-top: 0px">变量名可以包含字母,数字,下划线和美元符号。
ottom: 0px; border-left: 0px; padding-bottom: 0px; line-height: 16px; list-style-type: none; margin: 1em 0px; padding-left: 0px; padding-right: 0px; border-top: 0px; border-right: 0px; padding-top: 0px">
- ottom: 0px; border-left: 0px; padding-bottom: 0px; line-height: 1.5em; margin: 0px 0px 1em 1em; padding-left: 1.5em; padding-right: 0px; background-repeat: no-repeat; background-position: 0% 0.5em; font-size: 1em; border-top: 0px; border-right: 0px; padding-top: 0px">变量名必须以字母开头
- ottom: 0px; border-left: 0px; padding-bottom: 0px; line-height: 1.5em; margin: 0px 0px 1em 1em; padding-left: 1.5em; padding-right: 0px; background-repeat: no-repeat; background-position: 0% 0.5em; font-size: 1em; border-top: 0px; border-right: 0px; padding-top: 0px">变量名也可以以$和_开头(但一般不这么用)
- ottom: 0px; border-left: 0px; padding-bottom: 0px; line-height: 1.5em; margin: 0px 0px 1em 1em; padding-left: 1.5em; padding-right: 0px; background-repeat: no-repeat; background-position: 0% 0.5em; font-size: 1em; border-top: 0px; border-right: 0px; padding-top: 0px">变量名是大小写敏感的(y和Y是不同的变量)
- ottom: 0px; border-left: 0px; padding-bottom: 0px; line-height: 1.5em; margin: 0px 0px 1em 1em; padding-left: 1.5em; padding-right: 0px; background-repeat: no-repeat; background-position: 0% 0.5em; font-size: 1em; border-top: 0px; border-right: 0px; padding-top: 0px">保留字(如JavaScript关键字)不能作为变量名使用
ottom: 0px; border-left: 0px; padding-bottom: 0px; background-color: rgb(246,240); margin: 0px; padding-left: 0px; padding-right: 0px; border-top: 0px; border-right: 0px; padding-top: 0px">
ottom: rgb(212,212) 1px solid; padding-top: 7px">ottom: 0px; border-left: 0px; padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; border-top: 0px; border-right: 0px; padding-top: 0px">value | ottom: rgb(212,212) 1px solid; padding-top: 7px">可选。指定变量的值。
<h3 style="border-b<a href="https://www.jb51.cc/tag/ott/" target="_blank" class="keywords">ott</a>om: 0px; border-left: 0px; padding-b<a href="https://www.jb51.cc/tag/ott/" target="_blank" class="keywords">ott</a>om: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; border-top: 0px; border-right: 0px; padding-top: 0px">注意:</h3><span class="Apple-converted-space">如果变量声明未指定值,其<a href="https://www.jb51.cc/tag/mo/" target="_blank" class="keywords">默</a>认值为<span class="Apple-converted-space"><h3 style="border-b<a href="https://www.jb51.cc/tag/ott/" target="_blank" class="keywords">ott</a>om: 0px; border-left: 0px; padding-b<a href="https://www.jb51.cc/tag/ott/" target="_blank" class="keywords">ott</a>om: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; border-top: 0px; border-right: 0px; padding-top: 0px">undefined</h3></td>
</tr>
大家都看了很多文章,都说避免隐式声明全局变量,就是说声明变量前必须加'var',那加了'var'和不加'var'到底有啥区别呢?
先来看一段代码
rush:js;">
var a = 'aa';
alert(a); //弹出 'aa'
alert(window.a)//弹出'aa'
明白了吧,你声明一个全局变量其实是给'window'对象增加了一个属性,下面一段代码有相同效果
rush:js;">
a = 'aa';
alert(a); //弹出 'aa'
alert(window.a)//弹出'aa'
那"var a = 'aa' " 和 "a = 'aa' " 都是全局变量,有啥区别了? 看下面两段段代码
rush:js;">
var a = 'aa';
delete window.a; // false
a = 'aa';
delete window.a; // true
都是为'window'对象增加了属性,一个可以删除,一个不能删除。但是加上'var'就可以作用域相关了,不加'var'始终都是在为'window'对象动态添加属性,以下代码为证
rush:js;">
var test = function(){
a = 'aa';
}
test();
alert(window.a);//弹出'aa'
由于window对象是全局对象,因此默认可以不加,下面这段同样效果
rush:js;">
var test = function(){
a = 'aa';
}
test();
alert(a);//弹出'aa'
说到这,认真思考的同学现在必然有个疑问,为啥隐式声明的全局变量可以删除,显式声明的全局变量就无法删除?
原因是"delete 不可以删除那些可配置性为false的属性" ,某些内置对象的属性是不可配置的,比如通过变量声明或者函数声明创建的全局对象的属性,以下代码为证
rush:js;">
delete Object.prototype; // false 不可
删除,该
属性是不可配置的
var a = 'aa';
delete window.a;//false 不可
删除,该
属性是不可配置的
function
test(){};
delete window.test;//false 不可
删除,该
属性是不可配置的
那这样不就明白了,通过'var'声明的全局变量,其实际上是为'window'对象增加了一个不可配置的属性,而不加'var'声明的全局变量,其实际上是为'window'对象增加了一个可以配置的属性。
注意了,以上使用window的地方,window都可以用this代替,如:
rush:js;">
var test = function(){
a = 'aa';
}
test();
alert(this.a);//弹出'aa'
至于原因,请查看鄙人之前写的文章
下面拉出javascript中的var关键字,给大家单独讲解。
我们知道定义变量的时候,我们需要用到Var关键字,使用Var关键字时,我们需要注意他的使用方法:
下面几个列子,充分说明了Var在使用和不使用、全局变量和局部变量定义时,有不同的执行结果。
rush:js;">
var var01 = 1;
function fun
test() {
document.write(var01);
var var01 = 0;
}
结果为:undefined
rush:js;">
var var01 = 1;
function fun
test() {
document.write(var01);
var01 = 0;
}
结果为:1
rush:js;">
var01 = 1;
function fun
test() {
document.write(var01);
var var01 = 0;
}
结果为:undefined
rush:js;">
var01 = 1;
function fun
test() {
document.write(var01);
var01 = 0;
}
结果为:1
看到这里对javascript中的var你了解多少,相信大家通过本文学习多多少少都会有点收获的吧。欲了解更多关于javascript var相关知识请持续关注本站,谢谢!