gpt4 book ai didi

JavaScript 反射 : obtaining a variable's name?

转载 作者:行者123 更新时间:2023-11-30 07:45:16 26 4
gpt4 key购买 nike

我有几个变量分配给同一个函数。属性“name”为“”,因为此函数是匿名的;

也没有涉及函数调用,因此没有被调用者。

JS有没有办法通过自己实现的反射算法获取变量名?

例如

var x = function(){}
var myUnknownNamedVar1 = myUnknownNamedVar2 = x;

背景:

为了节省空间,数千个变量名称被分配给与延迟加载树桩相同的“静态”函数,这些函数在第一次调用时被解析为各个函数。 (变量名还包含命名空间)。

备选方案:

我的替代方案是使用对象,例如 {_name: myUnknownNamedVar1 , _fn: x}

这个问题的解决方案会很有趣。一个特殊的问题是辨别脚本中具有不同名称的变量,这些变量指向同一对象。

最佳答案

可以像这样使用对象反射:

const getVarName = obj => Object.keys(obj)[0];
const varToGetTheNameOf = "Value!";
getVarName({ varToGetTheNameOf }) // => "varToGetTheNameOf"

关于JavaScript 反射 : obtaining a variable's name?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7861956/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com