为什么此代码出现错误“ Hi不是函数”

当用户单击.step时,jquery将执行hello函数,该函数可以正常工作。 hello函数将调用hi函数=>我在这里遇到错误:Hi不是函数

jQuery(document).ready(function( $ ) {
    const form = {

        init: function() {
            $('.step').on('click', this.hello)
        },

        hello: function() {
          console.log('Index: ', $(this).index()); // I can get the right index
          this.hi(); // ERROR: Hi is not a function!
        },

        hi: function() {
            console.log('HI')
        },
    }

    form.init()
})

当我把这样的代码,它工作正常

jQuery(document).ready(function( $ ) {
    const form = {

        init: function() {
            $('.step').on('click', this.hi) // Look here
        },

        hi: function() {
            console.log('HI')
        },
    }

    form.init()
})

你们能解释为什么吗?

评论