[英]How do I define a javascript function as a variable from a variable
I'm trying to create a callback function in response to a JSONP request in Node. 我正在尝试创建一个回调函数来响应Node中的JSONP请求。
I receive callbackName as a String, and I have an Object (lets say var obj = {a : "b"}) I need to return the following : 我以字符串形式接收callbackName,并且有一个对象(可以说var obj = {a:“ b”}),我需要返回以下内容:
callbackName({a : "b"});
I tried concatenating strings - but I got 我尝试串联字符串-但我知道了
"callbackName([Object object])";
I tried JSON.Stringify but got: 我尝试了JSON.Stringify但得到了:
"callbackName({\"a\":\"b"});"
which is close - but it's all stringy. 距离很近-但都很严格。 Is there a way to get exactly what I want?
有没有办法得到我想要的东西?
UPDATE UPDATE
The code I'm using - which is in an AWS Lambda Function (turns out this is rather significant!) 我正在使用的代码-在AWS Lambda函数中(事实证明这很重要!)
context.succeed(request.callback + "(" + JSON.stringify(obj) + ");");
As mentioned below - Lambda expects an Object in succeed, which it calls JSON.Stringify on. 如下所述-Lambda期望对象成功,它调用JSON.Stringify。
Any ideas on how I could proceed? 关于如何进行的任何想法?
If I understand your question, then you need something like this: 如果我理解您的问题,那么您需要这样的事情:
var obj = {a:"b"};
var callbackName = "callback";
var scope = {};
scope.callback = function(e) {
return function() {
console.log(e);
}
}
setTimeout( scope[callbackName](obj), 1000 );
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.