作为参数(javascript)传递的函数的系统唯一id
System unique id of a function passed as a parameter (javascript)
这可能是不可能的,但也许一些stackoverflow天才可以找到解决方案:)
W希望有这样的功能:
var myCrazyFunc;
myCrazyFunc = function (param1, callback) {
var funcId;
// I would like to get an Id of the function passed by callback
// which will be different for those two calls in example below
funcId = getFuncId(callback);
callback();
};
myCrazyFunc("param1", function () {
dosomething1;
});
myCrazyFunc("param1", function () {
dosomething2;
});
请不要问我为什么需要它:)简单地说,如果可能的话,它会简化我的代码。
这是我制作的函数:
var myCrazyFunc;
var latestID = 0;
var funcToID = {};
function getFuncId(f) {
if (f in funcToID) {
return funcToID[f];
}
funcToID[f] = ++latestID;
return latestID;
}
myCrazyFunc = function(param1, callback) {
var funcId;
// I would like to get an Id of the function passed by callback
// which will be different for those two calls in example below
funcId = getFuncId(callback);
console.log(funcId);
callback();
};
myCrazyFunc("param1", function() {
'a';
});
myCrazyFunc("param1", function() {
'b';
});
此示例将记录:
1
2
如果你用相同的功能代码运行它,你会得到相同的id,比如这里:
myCrazyFunc("param1", function() {
'a';
});
myCrazyFunc("param1", function() {
'a';
});
输出:
1
2
我希望没关系。
相关文章:
- 创建一个类似链接的按钮,并通过Javascript函数打开一个新的弹出窗口
- 将函数的上下文应用于javascript变量
- 如何在JavaScript中将字符串转换为函数引用
- 用嵌套函数和默认函数定义函数
- 使用 jQuery 的 .on 函数如何获取事件的原始元素
- 无法导出函数expressjs/requestjs中的变量
- 函数参数中的数据与指定变量之间的任何性能差异
- JQuery合并了keyup和focusout两个函数
- ES6构造函数返回基类的实例
- ES6 类在通过系统导入时不是一个函数
- 防止在菜单/导航系统的特定屏幕宽度下触发 jQuery 函数
- 为什么 ready() 中的函数在刷新页面时不系统地执行
- AngularJS:在系统日期更改时调用函数
- 作为参数(javascript)传递的函数的系统唯一id
- 如何配置javascript引擎,使其在包含IO或系统设置相关函数的情况下不运行代码
- 如何将系统命令的输出作为函数的返回值
- 如何使用javascript调用系统打印函数
- 为什么我的调试系统在浏览器上告诉我(drawImage不是一个函数)
- 在CRUD系统中对null调用成员函数prepare()
- 节点.js模块/导出系统:是否可以将模块导出为函数