我正在为 VS2008 编写一个插件,我想识别 JavaScript 方法(函数)。我有一个文件 - example.js:`
function test0()
{
var i = 0;
{
var j = 0;
}
var array = { 1: 2, dd: 10, aaa: 3 };
return array;
}
function test1()
{
var ii = "x";
{
var xx = "x" + ii;
}
return ii;
}
`
如何识别这些方法?使用正则表达式?
最佳答案
请记住,JavaScript 函数可以通过多种方式编写。您展示了“C”风格的函数定义,但还有其他的。
您会看到很多“var test2=function(){}”。
您还会将它们视为对象“test3: function(){}”的成员。
您可以使用“new”,但这不是很流行。
不要忘记,许多 JavaScript 函数都是匿名的。
为了更好地衡量,您应该处理立即调用模式:
(function () {
// ...
}());
您将看到的代码是否会受到一些 self 强加的规则的限制?如果没有,当您看到“函数”时,您需要进行一些解析。特别是因为“函数”可能只是某些文本中的一个单词,并且您有几种不同类型的引号和几种注释样式需要解开,以查看它是否只是文本字符串的一部分或注释的一部分。
关于c# - 如何识别JavaScript方法(函数),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1122913/