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

es6函数问题

es6函数问题

手掌心 2019-03-15 15:02:33
今天在用vue的时候突然有个疑问:data () {    return {        value: 1     } },methods: {    a: function () {        console.log(this.value) //输出1     },     b () {        console.log(this.value) //输出1     },    c: () => {        console.log(this.value) //输出undefined     } }请问上面a() b() c()三种写法有什么区别?用的时候该如何选择?
查看完整描述

2 回答

?
缥缈止盈

TA贡献2041条经验 获得超4个赞

a和b其实是一样的,a的ES5的写法,b是ES6的写法,c使用箭头函数,会返回一个绑定当前执行上下文中的this,此处绑定的 this 是当前函数体内的this,严格模式下为undefined;

查看完整回答
反对 回复 2019-03-15
?
慕后森

TA贡献1802条经验 获得超5个赞

  1. a 是属性函数

  2. b 是函数b

  3. c 属性函数指向箭头函数,箭头函数绑定 this,在 vue 里面会自动帮你绑定 this指向组件对象,如果你使用了箭头函数。就会更改了原来 vue 的this对象。


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

添加回答

举报

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