前端知识及项目中常用的的概念和个人理解整理分享-6(其它前端知识可来我的博客主页查看o,有高见的时候,可以密我哦)

22.vue构建项目时,data中的数据一定要采用函数式包裹,其最核心的目的是保证每个组件上的数据都是独立的。
            为啥这样说:这样说其实跟js的数据存储是有关系的,函数执行时会创建独立的作用域空间(就是变量的有效范围),如果不用函数包裹的话,每个组件的data 都是内存的同一个地址,一个数据改变了,其他也改变了,这样完全不符合我们的代码预期.

             那为啥最后选中了函数的大括号而不是其他大括号呢?>>> 原因是javaScript本身是一门弱类型的语言,一般只有函数的大括号内会被当作块级作用域,没有其它的严格块级作用域,比如if(){我不构成作用域},对象object{我不构成作用域}(有的同学可能会说ES6中的Class字段创建的数据不就是块级作用域么,其实不然,因为es6增加的class字段只是一个javascript语法糖,并非严格的js作用域)。

             因由如斯,且看且学。

发布了8 篇原创文章 · 获赞 0 · 访问量 400
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 游动-白 设计师: 上身试试

分享到微信朋友圈

×

扫一扫,手机浏览