本小节我们将学习js的变量定义
Js有4种定义变量的方式:
var表示局部定义,如果是在函数内定义,函数外不可以访问;
如果变量前什么也不写,表示全局定义,如果是在函数内定义,函数外也可以访问;
let表示块内定义,如果在函数块内定义,块外是无法访问到的;
const表示常量定义,初始化后这个值就不可以再被修改了
局部定义的规则具体如下:
函数外定义,函数内可以访问
函数内定义,函数内可以访问
函数内定义,函数外不可以访问
我们看右边的代码,我们在函数myfunction外定义了一个变量x,在函数里是可以正常输出变量x的值的。
同时我们在函数里定义了一个变量y,但是在函数外进行输出的时候,会报错,提示未定义y。
全局定义的规则具体如下:
函数外定义,函数内可以访问
函数内定义,函数内可以访问
函数内定义,函数外可以访问
我们看右边的代码,我们在函数myfunction外定义了一个变量a,在函数里是可以正常输出变量a的值的。
同时我们在函数里定义了一个变量b,但是在函数外也是可以正常输出b的值。
什么是代码块,代码块是指仅仅用一个大括号包起来的代码,成为代码块。
块内定义的规则具体如下:
块外定义,块内可以访问
块内定义,块内可以访问
块内定义,块外不可以访问
我们看右边的代码,我们在块外定义了一个变量c,在块里是可以正常输出变量c的值的。
同时我们在块里定义了一个变量d,但是在块外进行输出的时候,会报错,提示未定义d。
常量定义的规则具体如下:
定义时必须赋值
以后不可以再次被赋值
我们看右边的代码,我们在定义了一个常量PI,如果我们对PI再次进行赋值,会报错。