如何为getJson回调添加额外的参数?

时间:2014-11-02 11:31:53

标签: javascript jquery callback arguments

我有以下功能:

  $.getJSON( "ajax/test.json", function( data ) {
      var items = [];
      $.each( data, function( key, val ) {
       ...
    });
}

如何将其他参数传递给函数?

我想要这样的事情:

var newParam = externalFunction();
$.getJSON( "ajax/test.json", function( data,newParam ) {
          alert(newParam);
          $.each( data, function( key, val ) {
           ...
        });
    }

2 个答案:

答案 0 :(得分:1)

也许你需要的是创建一个闭包:

var newParam = externalFunction();

$.getJSON('http://date.jsontest.com/', (function (newParam) {
    return function (data) {
      alert(newParam);
      $.each( data, function( key, val ) {
       ...
      });
    }}(newParam)));

闭包将在调用newParam时捕获$.getJSON的值。

答案 1 :(得分:0)

var newParam = externalFunction();

$.getJSON( "ajax/test.json", function( data) {
              alert(newParam); //in this case newParam is available
              $.each( data, function( key, val ) {
               ...
            });
       });

http://www.w3schools.com/js/js_scope.asp;