javascript - 如何切换数组的特定属性并使用node.js获取值
问题描述
我有下面的 JSON 文件,数组的长度将始终保持为 0。
示例.json:
[
{
"session1":"adfuwkko2938893okksjudisojowkekkw",
"session2":"asfkdkksi2io20909389eolsl0-2889d8",
"session3":"jfdskdfsoidfosdfi2334234889299209k",
"session4":"fdsadfkllkpsdiiwkk2388392902019782",
"session5":"kfksdfuiwllepspoodsfkkllsldlkkmem,",
"session6":"kdfksdoillsiioepwppeik993289200222"
}
]
我只想获取作为函数参数传递的上述键的值,如下所示
const pathToSessionKey = require('../../Sample.json');
async function getValue(keyIn) // I need to fetch the argument 'key' value from the above json file
{
return new Promise(function (resolve, reject){
for(var key in pathToSessionKey[0])
{
if(key === keyIn) //Checking if the keyIn argument is exist in the json file
{
console.log(key); //Able to print the key but not sure how to get value.
}
}
});
}
例子:
运行上述函数,如下所示:
getValue("session6").then(ele =>{ console.log(ele)});
输出:
**session6** but expected is "kdfksdoillsiioepwppeik993289200222"
有人可以帮我找到基于函数参数键的值。
解决方案
2 需要改进的地方
- 回报承诺
- 您可以在迭代或其他更简单的方式时使用 Object.entries 获取键和值。
async function getValue(keyIn){
return new Promise(function (resolve, reject){
for (const [key, value] of Object.entries(pathToSessionKey[0])) {
if(key === keyIn) {
console.log(value);
resolve(value)
}
}
});
}
getValue("session6").then(ele =>{ console.log(ele)}); // kdfksdoillsiioepwppeik993289200222
让我知道它是否有帮助!
推荐阅读
- amazon-web-services - AWS Kinesis 代理无权执行:firehose:PutRecordBatch
- javascript - Ajax 将请求发布到 .NET Core 操作并获得结果不起作用
- bash - 计算在加法和减法之间交替的序列
- java - 为什么 MediaMetadataRetriever 为某些键返回 null 但在我查询 MediaStore 时不返回
- django - Gunicorn 无法在 Amazon ec2 服务器上运行
- sql - 在 SQL Server 中将多行转换为多列
- html - 如何阻止 Bootstrap Nuget 包影响 HTML 框高度
- html - 在背景图像顶部有一个透明框/叠加层
- javascript - 如何在 React JS 中访问 Node.js 包
- google-cloud-platform - 谷歌云数据存储创建实体与父