为了账号安全,请及时绑定邮箱和手机立即绑定

vue.js methods中的方法互相调用时变量的作用域是怎样的?

vue.js methods中的方法互相调用时变量的作用域是怎样的?

杨魅力 2019-04-02 05:01:00
vue.js methods中的方法互相调用时变量的作用域是怎样的?
查看完整描述

3 回答

?
侃侃尔雅

TA贡献1801条经验 获得超15个赞

作用域:它是指对某一变量和方法具有访问权限的代码空间,在JS中,作用域是在函数中维护的。表示变量或函数起作用的区域,指代了它们在什么样的上下文中执行,亦即上下文执行环境。Javascript的作用域只有两种:全局作用域和本地作用域,本地作用域是按照函数来区分的。闭包:在js中的我的理解就是函数嵌套函数,当内部函数在定义它的作用域的外部被引用时,就创建了该内部函数的闭包,如果内部函数引用了位于外部函数的变量,当外部函数调用完毕后,这些变量在内存不会被释放,因为闭包需要它们.使用闭包要注意:1)由于闭包会使得函数中的变量都被保存在内存中,内存消耗很大,所以不能滥用闭包,否则会造成网页的性能问题,在IE中可能导致内存泄露。解决方法是,在退出函数之前,将不使用的局部变量全部删除。2)闭包会在父函数外部,改变父函数内部变量的值。所以,如果你把父函数当作对象(object)使用,把闭包当作它的公用方法(PublicMethod),把内部变量当作它的私有属性(privatevalue),这时一定要小心,不要随便改变父函数内部变量的值。

查看完整回答
反对 回复 2019-04-03
?
蝴蝶刀刀

TA贡献1801条经验 获得超8个赞

methods中的function中的this指向vue实例,其他的没什么这种调用方式是直接访问test2函数,没有任何的this绑定,所以肯定访问不到

查看完整回答
反对 回复 2019-04-03
  • 3 回答
  • 0 关注
  • 3583 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信