JS - 调用父函数

JS - call a parent function

本文关键字:函数 调用 JS      更新时间:2023-09-26

我发现了这个JS代码结构,我想知道如何从函数加载内部调用函数move():

.JS

function Start(data) {
    this.move= function() {
      ....
    };
    function load(){
       // call move
    }
}
function Start(data) {
    var _this = this;
    this.move = function() {
      console.log('mode');
    }
    function load() {
       _this.move();
    }
    // load();
}
Start();
new Start(); 
function Start(data) {
    this.move = function() {
       ....
    };
    function load(obj) {
      obj.move();
    }
    load(this);
}

这是一个 JavaScript 闭包。我发现这个网站很有帮助。

 var move = function () {
            alert("move");
        };
        load();
        function load() {
            move();
        }

此代码只会alert Move一次。

函数

Start()必须实例化为对象。因此,您将使用:

function Start(data) {
  this.move = function() {
  ....
  };
  this.load = function(){
   // call move
    this.move();
  }
}
var s = new Start(foobar);
s.load();

通过使用闭包,这可以通过描边父引用来实现;

function Start(data) {
    var me = this;
    this.move= function() {
      ....
    };
    function load(){
       me.move();// call move
    }
}

祝你好运。