首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >获取变量的名称(如C#中的nameof运算符)

获取变量的名称(如C#中的nameof运算符)
EN

Stack Overflow用户
提问于 2016-05-06 01:56:30
回答 1查看 14.8K关注 0票数 26

让我们假设我们有以下代码:

代码语言:javascript
运行
复制
const myVariable = { age: 7, name: "Hunter" };

我想知道变量的名称,而不仅仅是它的值,并将其放入字符串中或记录下来,或者:

代码语言:javascript
运行
复制
const s = nameof(myVariable) + ': ' + JSON.stringify(myVariable);

我想看到的结果是:

代码语言:javascript
运行
复制
"myVariable: {"age":7,"name":"Hunter"}"

期待看到您的解决方案。

EN

Stack Overflow用户

发布于 2016-05-06 01:56:30

这是我自己的问答风格的答案,它带有一点折衷。这里的诀窍是将参数传递给对象内部的函数nameof,方法是用大括号将其括起来,比如nameof({myVariable})而不是nameof(myVariable)

遵循此约定,解决方案可能如下所示:

代码语言:javascript
运行
复制
var HD = HD || {};
HD.nameof = function (obj) {
  return Object.keys(obj)[0];
}

这就是我如何使用它来获取变量/对象的名称加上对象的内容/变量的值:

代码语言:javascript
运行
复制
const s = HD.nameof({myVariable}) + ': ' + JSON.stringify(myVariable);   

因此,s将包含上述问题中要求的结果。

票数 27
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37057211

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档