JavaScript确定函数所采用的参数数量

时间:2013-10-22 13:41:28

标签: javascript

假设我有一些函数存储在一个对象数组中,每个函数都有不同数量的参数:

var ops = [
   {
      id: "plus",
      op: function(a, b) {
         return a + b;
      }
   },
   {
      id: "inverse",
      op: function(a) {
         return -a;
      }
   }
];

如何确定函数从函数外部获取的参数数量(不指定为附加属性),例如

for (var i = 0; i < ops.length; i++) {
   var op = ops[i].op;
   var args = ? // Determine number of arguments op takes here
}

这甚至可能吗?如果是这样的话?

1 个答案:

答案 0 :(得分:5)

是的,这是可能的。使用function.length