试图理解wiki Viewer的回调函数的代码

时间:2018-02-17 19:13:28

标签: javascript

  1. 此函数中变量k的用途是什么?
  2. 窗口[callback]是一个数组吗?
  3. 如果我尝试打印此行:window [callbackName] = k;它说未定义。这是链接:https://www.mediawiki.org/wiki/API:Search_and_discovery

          var createCallback = function (k) {
          var i = 1;
          var callbackName;
          do {
            callbackName = 'callback' + i;
            i = i + 1;
          } while (window[callbackName])
          window[callbackName] = k;
          return callbackName;
        }
    

1 个答案:

答案 0 :(得分:0)

  1. k是一个传入函数的参数(window[callbackName] = k;此代码至少隐含地表明了这一点。)
  2. window [callback]不是数组,这只是其他语法 window.callback。结果是您动态选择回调,因为var callbackName;中的回调可能不同。
  3. 它表示未定义,因为您需要在参数k中添加一些内容。如果你把一些东西作为参数,它将返回一些东西,这不会是未定义的。