Javascript 试图理解wiki Viewer回调函数的代码 变量k在这个函数中的作用是什么 窗口[回调]是数组吗
如果我试图打印这一行:window[callbackName]=k;它说未定义。以下是链接:Javascript 试图理解wiki Viewer回调函数的代码 变量k在这个函数中的作用是什么 窗口[回调]是数组吗,javascript,Javascript,如果我试图打印这一行:window[callbackName]=k;它说未定义。以下是链接: k是传递函数的参数(window[callbackName]=k;此代码至少隐式指示了这一点) window[callback]不是数组,这只是用于 window.callback。其结果是动态选择回调,因为var callbackName可以是不同的 它表示未定义,因为需要在参数k中输入一些内容。如果你把某个东西作为一个参数,它将返回某个东西,而这不是未定义的 window[callback]不是数
window[callbackName]=k;
此代码至少隐式指示了这一点)window.callback
。其结果是动态选择回调,因为var callbackName代码>可以是不同的
window[callback]不是数组,这只是window的另一种语法。callback
实际上有点复杂-callback
是一个变量,所以可以动态使用它。例如,如果设置callback=“foo”
,则window[callback]
将与调用window.foo完全相同,如果将其设置为“bar”
,则与调用window.bar类似。因此,它基本上是在改变的——在本例中,它通过在回调名称后面附加一个计数器,向窗口添加一组唯一的回调。
var createCallback = function (k) {
var i = 1;
var callbackName;
do {
callbackName = 'callback' + i;
i = i + 1;
} while (window[callbackName])
window[callbackName] = k;
return callbackName;
}