Javascript如何在变量对象函数中调用另一个函数

时间:2018-03-14 16:24:08

标签: javascript

我想在注销函数中调用isAuthenticated()方法。

(我不确定你把这个布局称为包含函数的变量对象)

var svc = {
    logout: function () {
        isAuthenticated() // Call isAuthenticated function here
    },
    login: function () {},
    isAuthenticated: function () {}
}

简单地调用isAuthenticated()不起作用。

5 个答案:

答案 0 :(得分:0)

MyClass是一个对象,其中有logout& svc是方法。您可以使用isAuthenticated来调用该函数。这里this指向this对象



svc




答案 1 :(得分:0)

将其添加到其中。

 var svc = {
                logout: function () {
                    this.isAuthenticated() // Call isAuthenticated function here
                },

                login: function (){


                },

                isAuthenticated: function () {
                    console.log("Test");
                }
}

svc.logout();

答案 2 :(得分:0)

我相信你要找的是:

this.isAuthenticated();

你需要使用"这个"调用同一对象的其他成员。

答案 3 :(得分:0)

通过在对象名称前加上变量/函数名称前缀来访问Javascript对象变量和函数。

在您的情况下,您可以像这样调用isAuthenticated():

svc.isAuthenticated()

答案 4 :(得分:0)

您需要使用该对象的引用svc --> this.isAuthenticated()



var svc = {
  logout: function() {
    this.isAuthenticated()
  },

  login: function() {},

  isAuthenticated: function() {
    console.log("Is Authenticated!?")
  }
}

svc.logout();




另一个选择是创建一个函数并声明一个变量,这样你就可以直接调用它,如下所示:



var svc = function() {
  var isAuthenticated = function() {
    console.log("Is Authenticated!?");
  }
  
  this.isAuthenticated = isAuthenticated;
  
  this.logout = function() {
    isAuthenticated()
  };
  
  this.login = function() {};
}

new svc().logout();
new svc().isAuthenticated();