如何从字符串格式的javascriptCode中获取functionName
这是我的密码如何从字符串格式的javascriptCode中获取functionName,javascript,Javascript,这是我的密码 var javascriptCode="function adding(a,b){ return a+b}" 我想从字符串中选择functionName添加,怎么做 我试图找到它的索引作为 var indexStart=javascriptCode.indexOf("function "); var indexEnd=javascriptCode.indexOf("("); var res = javascriptCode.substring(indexStart, indexE
var javascriptCode="function adding(a,b){ return a+b}"
我想从字符串中选择functionName添加
,怎么做
我试图找到它的索引作为
var indexStart=javascriptCode.indexOf("function ");
var indexEnd=javascriptCode.indexOf("(");
var res = javascriptCode.substring(indexStart, indexEnd);
但我得到的输出是
功能添加
,是他们做这件事的任何其他方法像这样试试
var javascriptCode="function adding(a,b){ return a+b}";
var indexStart=javascriptCode.indexOf(" ");
var indexEnd=javascriptCode.indexOf("(");
var res = javascriptCode.substring(indexStart+1, indexEnd);
console.log(res);
您可以使用正则表达式
var javascriptCode="function adding(a,b){ return a+b}"
var regex = /function\s*([^\(]*)\(/
var matchResult = javascriptCode.match(regex)
var funcName = null;
if (matchResult && matchResult.length) {
funcName = matchResult[1];
}
console.log(funcName);
这是一个很棒的解决方案。谢谢。:)旁注:将来如果你不确定是否有答案,请发表评论。(我从你的帖子中删除了问题。)谢谢Anik,我把这个问题作为优先考虑的问题:)旁注:很可能有更好的方法来实现你的实际目标。频繁地从字符串计算脚本是安全问题的标志。如果你真的必须这么做——考虑找到完整的JavaScript解析器,而不是试图将字符串解析为正确的脚本。@ AlxeILVENKOV实际上我使用的是UI ACE并以字符串格式存储该脚本,但无论如何,谢谢: