簡體   English   中英

javascript-向函數發送參數

[英]javascript - sending a parameter to a function

我有這個:

var MyObject = {};

MyObject.doStuff = function(someParam) {
   var webdav = new Webdav("addr","port");    

   var handler = {
      onSuccess: MyObject.Success,
      onError: MyObject.Fail
   }

   webdav.PUT(handler, filename, options);
}

MyObject.Success = function(result) {
    alert('status ' + result.status + result.statusstring);
}

我正在使用exo平台 javascript庫進行webdav訪問(如果重要)

如果成功完成webdav.PUT則我正在創建的處理程序將調用MyObject.Success 我也該如何將someParam發送到該函數?

換句話說,在成功或失敗的操作之后,我對根據結果對someParam做一些事情感興趣。

您應該研究javascript對象,並嘗試將代碼包含在一個范圍內。 像這樣:

var MyObject = {

    var doStuff = function(someParam) {
        var webdav = new Webdav("addr","port");    

        var handler = {
          onSuccess: function(result) {success(result, someParam);},
          onError: function() { fail(); }
        }

       webdav.PUT(handler, filename, options);
    }

    var success = function(result, someParam) {
        alert('status ' + result.status + result.statusstring);
    }

    var fail = function() {}

    this.doStuff = doStuff;
}

var myObj = new MyObject();
myObj.doStuff(param);

這可能是您要尋找的: javascript回調函數和參數

或: http : //onemarco.com/2008/11/12/callbacks-and-binding-and-callback-arguments-and-references/

var someParam = 'foo';
var handler = {
     onSuccess: function(result) {success(result, someParam);},
     onError: function() { fail(); }
    }

一種簡單的方法,利用JavaScript閉包:

var handler = {
   onSuccess: function(result) { MyObject.Success(result, someParam); },
   onError: MyObject.Fail
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM