javascript - 严格模式下获取当前函数名

标签 javascript strict

我需要将当前函数名称作为字符串记录到我们的日志工具中。但arguments.callee.name仅适用于松散模式。如何获取“use strict”下的函数名称?

最佳答案

出于日志记录/调试目的,您可以在记录器中创建一个新的 Error 对象并检查其 .stack 属性,例如

function logIt(message) {
    var stack = new Error().stack,
        caller = stack.split('\n')[2].trim();
    console.log(caller + ":" + message);
}

function a(b) {
    b()
}

a(function xyz() {
    logIt('hello');
});

关于javascript - 严格模式下获取当前函数名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47642499/

相关文章:

javascript - JavaScript 中的 jsp 标签

javascript - 如何管理不同按钮点击时的多个叠加层?

Javascript 更改背景颜色功能不起作用

php - 更新到 php 5.4.9 后静态标准错误

perl - 是否可以在不禁用严格的情况下访问符号表?

javascript - 为什么严格模式的activator 'use strict'是一个字符串?

javascript - 识别项目中未使用的 JS 脚本文件

javascript - HTML/Javascript 在页面加载时获取变量

javascript - 严格模式下的 "return"和 "this"

reactjs - react /Reactstrap 警告 : Legacy context API has been detected within a strict-mode tree