vue中的data为什么是一个函数,什么是闭包,作用域链,var let 和const的区别

528 阅读1分钟

vue中的data为什么是一个函数

因为vue是一个单页面应用,使用闭包的话,组件中的各个data相当于都有了一个独立的作用域,互不干扰,所以可以这样用

什么是闭包

可以在全局作用域里面调用局部变量。 就是方法里面返回一个方法,延长生命周期。 闭包会常驻内存,所以慎用闭包

作用域链

如果查找一个值的话,会一层一层往上找

var let 和const的区别

var可以声明一个未被定义的变量,//变量是undifunde var可以重复声明一个变量,之前的变量会被新变量覆盖,会产生一些不可预知的错误。 var没有块级作用域 const一般定义的是常量,全局作用域 const的变量的值是不可以修改,否则就报错 const声明的值必须赋值,否则就报错 支持let的其他属性