作为NPObject的功能 - 如何获得它的签名?

时间:2012-12-03 07:44:46

标签: javascript npapi

我的NPAPI插件接收一个Javascript函数作为NPObject。 有没有办法获得这个函数的签名,或者至少是它需要的参数数量?

谢谢。

2 个答案:

答案 0 :(得分:1)

与C ++不同,JavaScript是dynamically typed:您只需调用该函数并依赖它来处理传入的内容。

虽然有Function.length来获取命名参数的数量,但基于此的不同行为会破坏以下方法:

  • 通过检查正在定义的参数来处理不同的参数计数
  • 使用arguments array

答案 1 :(得分:0)

您可以使用此类代码获取参数数量:

function MyFunc(a, b, c) {
     //some stuff here...
}

var num = MyFunc.length;
alert("number of arguments: " + num);

Test case

除此之外,你可以不在函数本身之外,JavaScript没有类型,所以你不知道函数期望什么类型的参数。