typeScript变量声明

局部变量:函数体内定义的变量就是局部变量

全局变量: 函数体外定义的变量就是全局变量,当然如果是函数内部未使用var声明的变量也是全局变量

块级变量: 变量只能在声明的区域或者函数内部使用

Tips:

var声明的变量,如果全局变量和局部变量同名时,则会造成变量提升,函数内部如果在同名变量未声明之前使用了这个变量,而后面又声明这个跟全局变量一样的变量,则这个变量会提升到使用之前的位置被声明,后面变成了赋值

var qj = '刘德华'
function face () {
    console.log(qj) => undefined
    var qj = '马德华'
    console.log(qj) => 马德华
}

===> 其实变量提升,解析为:
 
function face () {
    var qj
    console.log(qj) => 变量从后面提升到使用之前被声明,但是没有任何值,所以是undefined
    qj = '马德华'
    console.log(qj) => 变量被赋值,所以是马德华
}

猜你喜欢

转载自www.cnblogs.com/zjh-study/p/10650728.html