当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 获取Javscript执行函数名称的方法

Javascript
window.onload 加载完毕的问题及解决方案(下)
jQuery 版本的文本输入框检查器Input Check
jquery Firefox3.5中操作select的问题
jquery 1.3.2 IE8中的一点点的小问题解决方法
javascript div 遮罩层封锁整个页面
javascript 页面只自动刷新一次
Javascript 区别浏览器 代码
checkbox 复选框不能为空
Prototype 学习 Prototype对象
Prototype 学习 工具函数学习($方法)
Prototype 学习 工具函数学习($A方法)
Prototype 学习 工具函数学习($w,$F方法)
Prototype Object对象 学习
Prototype Function对象 学习
Prototype Date对象 学习
JavaScript 事件对象的实现
JavaScript 事件查询综合
JavaScript 继承详解(一)
JavaScript 继承详解(二)
JavaScript 继承详解(三)

Javascript 中的 获取Javscript执行函数名称的方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 324 ::
收藏到网摘: n/a

From: http://blog.iecn.net/zmm
<script language="javascript">
function getFuncName(_callee) {
var _text = _callee.toString();
var _scriptArr = document.scripts;
for (var i=0; i<_scriptArr.length; i++) {
var _start = _scriptArr[i].text.indexOf(_text);
if (_start != -1) {
if (/^function\s*\(.*\).*\r\n/.test(_text)) {
var _tempArr = _scriptArr[i].text.substr(0, _start).split('\r\n');
return _tempArr[_tempArr.length - 1].replace(/(var)|(\s*)/g, '').replace(/=/g, '');
} else {
return _text.match(/^function\s*([^\(]+).*\r\n/)[1];
}
}
}
}
function a() {
return getFuncName(arguments.callee);
}
var b = function() {
return getFuncName(arguments.callee);
}
window.alert(a());
window.alert(b());
</script>