【发布时间】:2020-05-28 17:11:52
【问题描述】:
我试过JSON.stringify() 和Object.Keys() 但是它们不适合我,它们不输出对象键的名称
我的 .JSON 文件:
{
"KittenLauncher": {
"a": "value1",
"b": "value2"
}
}
我当前的 JS 文件:
const obj = require('../../someJSONFileIHave.json');
let rname = "Kitten";
let rating;
function getValueByPartialKey(obj, key) {
try {
rating = 'A, B, C';
return (Object.entries(obj).find(([k, v]) => k.includes(key)))[1]; // Returns KittenLauncher as an [Object]
} catch (e) {
console.log("Object Key does not exist!")
}
}
return console.log(JSON.stringify(getValueByPartialKey(obj, rName))); // Outputs "{"a": "value1","b": "value2"}"
我希望它像这样输出对象键的名称:“KittenLauncher”
有正确的方法吗?
【问题讨论】:
-
您要获取变量的名称?为什么?
-
Object.keys({KittenLauncher})[0]将返回一个字符串KittenLauncher,但我看不出尝试这样做的意义。 -
您想要对象名称 (KittenLauncher)?而不是对象键名(a 和 b)?
-
您的变量
KittenLauncher包含指向您的对象的指针。您的对象不知道哪些变量可能指向它。可能有数百个或一个。这个请求(没有任何上下文)实际上没有任何意义。也许您应该备份并描述您实际尝试解决的问题,因为无论它是什么,这都不是您解决它的方式。
标签: javascript node.js json discord.js