网站地图    收藏   

主页 > 专题教程 > javascript > js基础 >

JavaScript变量及变量作用域

来源:自学PHP网    时间:2018-02-08 10:24 作者: 阅读:

[导读] 变量代表了系统的一个存储区域。JavaScript是一种动态语言,对于JavaScript而言,它没有变量类型。也就是说,在声明变量时不需要指定变量的类型,变量类型由赋值给变量的值所确定。...

变量代表了系统的一个存储区域。所有的编程语言都提供了变量这个语言元素。变量用于存储数据,比如数值或字符串。变量有三个方面的特性:名称、类型以及变量的值。

JavaScript是一种动态语言,对于JavaScript而言,它没有变量类型。也就是说,在声明变量时不需要指定变量的类型,变量类型由赋值给变量的值所确定。JavaScript不能像Java和C++那样在声明变量的时候指定变量的数据类型。

如果需要查看变量的类型,可以使用typeof运算符来查看。typeof的使用方法有两种,这两种方法是等价的。

typeof operand 
typeof (operand)                             
                            

在JavaScript中,常用的变量类型有:Number、String、Boolean、Array和Date。对于字符串类型,typeof返回string,数值类型的值返回number,布尔类型的值返回boolean,对象类型的值返回object,函数类型的值返回function。如果一个变量没有定义,那么typeof对这个变量操作的结果为undefined

NullUndefined也是JavaScript的数据类型。Null的取值为null,表示“没有值”。Null既不是0,也不是空字符串,而是JavaScript的一种对象类型。Null用于初始化变量,以避免产生错误,也用于清除变量的内容,从而释放于变量关联的内存空间。当把Null赋值给某个变量后,该变量就不再保存任何有效数据了。

对于一个已经声明但为赋初值的变量来说,它的值为undefined,如果在程序中直接使用这个值,会导致程序出错。对于这样的变量,可以使用typeof来判断其类型,typeof返回的值将是字符串undefined。如果声明变量后,把null赋值给这个变量,那么这个变量的值为null,在程序中使用这个变量时将不会导致运行时错误。

单词undefined不是JavaScript中的关键字,而是系统预定义的一个全局变量。nullundefined既有联系,又有一定的区别。当使用==运算符来判断这两个值是否相等的时候,得到的结果为相等。如果想区分判断nullundefined,应该使用测试一致性的运算符===

typeof(null);       //object
typeof(undefined);  //undefined;
null == undefined;  //true
null === undefined; //false                              
                            

变量在使用之前必须声明,这不仅是JavaScript的要求,也是一个好的编程习惯。JavaScript声明变量有两种方式:使用关键字var显示声明变量和使用赋值语句隐式的声明变量。

在声明变量的同时,可以为变量指定一个值,这个过程称为变量的初始化。如果没有为变量赋初值,那么这个变量的值为undefined

变量声明语句的一般格式为:

var variable_name = value;  //声明变量的同时初始化变量
var variable_name;          //声明变量,但没有进行初始化
variable_name;              //在为变量赋值的同时声明变量                             
                            

变量的作用域指的是变量的作用范围或使用范围。JavaScript有两种变量:全局变量和局部变量。全局变量在整个页面中都可以使用(要在变量声明之后);局部变量则只能在函数中使用,并且局部变量必须使用var关键字来声明。

声明一个局部变量:

function fn1(){
  var a = 10; //声明一个局部变量,该变量的作用域为fn1()函数
  alert(a);
}                              
                            

当在函数内部没有使用var来声明变量的时候,这个变量就会作为全局变量来声明。

function fn2(){
  b = 10; //声明一个全部变量,该变量可以在fn2()函数之后的所有地方使用
  alert(b);
}                               
                            

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论