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

 更新时间:2006年12月22日 00:00:00   作者:  
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>

相关文章

  • JS异步堆栈追踪之为什么await胜过Promise

    JS异步堆栈追踪之为什么await胜过Promise

    与直接使用Promise相比,使用async/await不仅可以使代码更具可读性,而且还可以在JavaScript引擎中实现一些有趣的优化。这篇文章是关于一个这样的优化,涉及异步代码的堆栈追踪。
    2021-04-04
  • 一文详解JS中的块级作用域

    一文详解JS中的块级作用域

    在JavaScript的世界里,作用域可以分为三种,分别是全局作用域,函数作用域,块级作用域,本文主要来和大家聊聊JS中块级作用域的相关知识,感兴趣的可以了解下
    2023-09-09
  • JavaScript实现PC端横向轮播图

    JavaScript实现PC端横向轮播图

    这篇文章主要为大家详细介绍了JavaScript实现PC端横向轮播图,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-02-02
  • JavaScript中exec()方法详解

    JavaScript中exec()方法详解

    JavaScript的exec()方法是在正则表达式对象上调用的方法,它用于在字符串中执行正则表达式搜索,并返回匹配的结果,本文就给大家详细的讲解JavaScript中exec()方法,感兴趣的同学跟着小编一起来看看吧
    2023-09-09
  • 基于zepto.js简单实现上传图片

    基于zepto.js简单实现上传图片

    这篇文章主要介绍了基于zepto.js简单实现上传图片的相关资料,需要的朋友可以参考下
    2016-06-06
  • js 中的switch表达式使用示例

    js 中的switch表达式使用示例

    switch 这种表达式在很多语言中都有,比如java, C等待, 使用switch比使用if else 来得方便,来得清晰,下面为大家详细介绍下其具体的使用,感兴趣的朋友可以参考下
    2013-09-09
  • JS实现横向轮播图(中级版)

    JS实现横向轮播图(中级版)

    这篇文章主要为大家详细介绍了JS实现横向轮播图的中级版,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-01-01
  • js传递数组参数到后台controller的方法

    js传递数组参数到后台controller的方法

    下面小编就为大家分享一篇js传递数组参数到后台controller的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-03-03
  • HTML元素拖拽功能实现的完整实例

    HTML元素拖拽功能实现的完整实例

    这篇文章主要给大家介绍了关于HTML元素拖拽功能实现的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • 一文剖析JavaScript中闭包的难点

    一文剖析JavaScript中闭包的难点

    这篇文章主要为大家详细介绍了JavaScript中闭包的一些难点,文中的示例代码讲解详细,对我们学习JavaScript有一定帮助,需要的可以参考一下
    2022-09-09

最新评论