首页 > 解决方案 > 在 JavaScript 中打印正确的变量名

问题描述

我正在尝试使用具有以下代码的函数在 JavaScript 中记录变量名称及其值...

var x = 5;
function get(v) {
    console.log(Object.keys({v})[0] + " = " + v);
}
get(x); // It should log "x = 5"

但相反,它会记录v = 5.

有没有办法存储变量名并正确记录变量名?

标签: javascriptdebugging

解决方案


发生这种情况是因为在您打印时,您正在构建一个具有名为“v”的键的对象......就是{v}这样。

x您可以通过在您有权访问变量 时创建对象来解决此问题,并执行以下操作{x}

var x = 5;
function get(v) {
    console.log(Object.entries(v)[0].join(" = "));
}
get({x});


推荐阅读