Typescript获取函数内设置变量的名称
Typescript get name of setted variable inside a function
是否可以在函数内获得设置变量的名称?
public MyFunction(): any {
//get myVarName as string;
}
var myVarName = MyFunction();
不能获取MyFunction()
内部的myVarName
变量名
在MyFunction()
内部,不知道哪些其他变量也可能包含对MyFunction()
的引用,或者哪些变量可能包含调用MyFunction()
的结果。
你是否意识到这行代码:
var myVarName = MyFunction();
实际上调用MyFunction()
并执行它,但myVarName
直到函数运行后才分配?
可以有0个、一个或数百个其他变量包含对被调用函数的引用。函数和可能包含对函数引用的变量之间没有联系。如果你想要这样的链接,你必须以某种方式建立自己的数据结构来跟踪该链接,然后MyFunction()
可以遍历该数据结构以查看谁有对它的引用。但是,每次分配引用时,还必须修改跟踪该引用的数据结构。
如果不是像myVarName
这样的全局变量,所有这样的函数引用都保存在一个已知的数组或已知的对象中,那么MyFunction()
就有可能搜索这个已知的数组或对象,并找到所有指向它自己的项。
和StackOverflow一样,如果你描述你真正想要解决的问题(而不是你正在寻找的具体解决方案),你可能会得到更好的建议。
No。由于变量赋值发生在之后,所以函数调用。
对于发生在堆栈调用上的任何事情,你都可以执行stacktrace:
try{
throw new Error('Buck stops here')
}catch(e){
console.log(e.stack) // Yea!
}
: http://tobyho.com/2011/06/08/the-javascript-stacktrace-blog/
相关文章:
- 如何在Bootstrap Modal中为动态点击生成的变量设置jade属性
- Javascript使用变量设置属性
- 敲除js变量设置类似于调用函数
- 使用输入变量设置元素的值
- 为什么我们将控制器变量设置为等于“0”;这个“;在角度上
- 将外部控制器的范围变量设置为角度
- 谷歌地图标记在通过变量设置标记和经度时不保持不变
- 尝试在 jquery ajax 帖子中将变量设置为URL 的一部分
- 如果循环中至少有一个元素返回 false,如何将变量设置为 false
- 如何将宽度和高度变量设置为浏览器窗口的宽度和高度
- 如何将变量设置为外部内容
- 需要将变量设置为特定的数字范围
- 执行批处理文件的Javascript,该文件包含基于每个会话的环境变量设置
- 如何在jquery中基于变量设置某个东西的宽度
- 将变量设置为等于本地JSON文件
- 根据Angular中的单独变量设置下拉默认值
- 如何使用JavaScript变量设置函数集css宽度
- 如何为一个javascript变量设置give多个值
- 如何将javascript变量设置为php变量并将其存储在数据库中
- 如何在javascript中为变量设置一行setter