Javascript 使用同一对象中的其他方法调用对象中的方法

Javascript 使用同一对象中的其他方法调用对象中的方法,javascript,object,methods,Javascript,Object,Methods,我需要validateText函数来调用modalFunc。我该怎么做 function geoAlert(lodash) { var me = this; return { modalFunc: function(text) { alert(text); }, validateText: function() { modalFunc("hello") }

我需要
validateText
函数来调用
modalFunc
。我该怎么做

function geoAlert(lodash) {

    var me = this;

    return {
        modalFunc: function(text) {
            alert(text);
        },
        validateText: function() {
            modalFunc("hello")
        }
    }
}
当我跑步时:

geoAlert.validateText()我将获得此错误:

ReferenceError:未定义modalFunc


使用
me.modalFunc(“hello”)
也不起作用。请提前给予帮助和感谢。

看起来您正在尝试使用一种显示模块模式;返回有效提供方法的对象。为此,您需要按如下方式执行主函数(注意末尾的“()”表示将立即调用它):


我所做的另一个更改是,modalFunc需要加上前缀,因为它与validateText是作为同一个返回对象的一部分存在的。

看起来您正在尝试使用一个显示模块模式;返回有效提供方法的对象。为此,您需要按如下方式执行主函数(注意末尾的“()”表示将立即调用它):


我所做的另一个更改是,modalFunc需要加上前缀,因为它与validateText是作为同一个返回对象的一部分存在的。

您可以创建一个命名函数:

function geoAlert(lodash) {

    function modalFunc(text) {
      alert(text);
    }

    return {
        modalFunc: modalFunc,
        validateText: function() {
            modalFunc("hello")
        }
    }
}

然后不管如何调用
validateText
。但是您仍然应该这样做,因为您尝试使用
var me=this,它可能无法实现您想要的功能。

您可以创建一个命名函数:

function geoAlert(lodash) {

    function modalFunc(text) {
      alert(text);
    }

    return {
        modalFunc: modalFunc,
        validateText: function() {
            modalFunc("hello")
        }
    }
}

然后不管如何调用
validateText
。但是您仍然应该这样做,因为您尝试使用
var me=this
可能无论如何都不能实现您想要的功能。

这取决于如何调用
validateText
。似乎您主要只需要了解
这个
在JS中是如何工作的。这取决于如何调用
validateText
。似乎您主要只需要了解
这个
在JS中是如何工作的。