码迷,mamicode.com
首页 > 其他好文 > 详细

查找函数参数名称

时间:2017-04-12 16:25:27      阅读:126      评论:0      收藏:0      [点我收藏+]

标签:[]   查找   names   函数   代码   .exe   exe   style   数列   

function argumentNames(fn){
       //查找参数列表
       var found = /^[\s\(]*function[^(]*\(\s*([^)]*?)\s*\)/.exec(fn.toString());
       //分隔参数列表
       return found && found[1] ? found[1].split(/,\s*/) : [];
};

alert(argumentNames(function(){}).length === 0);
alert(argumentNames(function(x){})[0] === ‘x‘);

var results = argumentNames(function(a,b,c,d,e){});
alert(results[0] == ‘a‘ &&
       results[1] == ‘b‘ &&
       results[2] == ‘c‘ &&
       results[3] == ‘d‘ &&
       results[4] == ‘e‘);

该函数只有几行代码,却使用了很多javascript的高级特性。首先,该函数反编译了传入的函数,并使用正则表达式,将这些参数从逗号分隔的参数列表中抽取出来。

 

查找函数参数名称

标签:[]   查找   names   函数   代码   .exe   exe   style   数列   

原文地址:http://www.cnblogs.com/gongshunkai/p/6699567.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!