2016-01-01 147 views
-2

此代码在传递给getPage的函数是函数语句时工作,但是,当我传递函数创建的函数时,param2返回undefined?为什么是这样?我需要使用呼叫还是绑定?Node.js - 匿名函数回调

function getPage(callback, param2) { 

    var url = 'http://www.google.com'; 
    var param2 = param2; 

    if (url) { 
    url = url; 
    } else { 
    console.log('There was an error. No URL submitted'); 
    } 

    callback(url, param2); 
} 


getPage(function(url, param2){ 
    console.log(`The URL of the page requested was ${url} and the added argument was ${param2}`); 
}); 
+0

你的问题还不清楚。发布不起作用的代码,并解释它究竟发生了什么错误,以及你期望它做什么。 – Pointy

+0

此外,您发布的代码在语法上不正确;引号在最后的'console.log()'调用中是错误的。 – Pointy

+0

另请注意'var param2 = param2';在一个函数体中,'param2'是函数的一个声明参数,这是一个误导性的无操作。 –

回答

1

你刚才叫GETPAGE功能没有通过第二个参数,所以param2是不确定的,调用回调函数具有相同未定义param2

0

你需要指定的第二个参数是这样的:

getPage(function(url){...}, param2);