问答详情
源自:6-3 [JavaScript]this

我不明白bind绑定内容中最后的:console.log(o.f(),o.g())为什么o.f()会输出37呢?

我不明白bind绑定内容中最后的:console.log(o.f(),o.g())为什么o.f()会输出37呢?o不是对象吗,f不是函数吗?为什么可以   对象.函数()这样写。

提问者:JoneHsu 2016-06-17 17:23

个回答

  • 大麦1943
    2016-08-08 12:14:59
    已采纳

    1. o.f()为什么会输出37?

      对象o调用了方法f(), 然而f()就是要返回当前对象的属性a, 而当前对象是o, o有一个属性a的值是37, 所以打印37;


    2. o是对象吗?是;f是函数吗?是;


    3. 为什么可以对象.函数()?

      猜测题主的意思是为什么要在函数名后面加小括号吧,如果不是请指正。对象.函数(), 这种形式表示要执行函数。函数分为两种状态:定义状态和运行状态。而调用函数让它运行的时候要用到这种格式。


  • 盘旋而上一飞冲天
    2016-06-17 21:10:05

    o是对象,对象的属性值可以是方法,调用时用对象名.属性名()的形式调用。