javascript - Node js : access json if variable name in string?

标签 javascript json node.js variables

我有如下的 json 对象

var data = { 
   datetime:{
     time:"9:30 AM",
     date:"24-09-2017"
   }
}

我有字符串 var element = "data.datetime.time"如何使用 element 访问时间。

最佳答案

Split字符串(点作为分隔符),并使用 Array#reduce从对象中提取数据:

var data = { 
   datetime:{
     time:"9:30 AM",
     date:"24-09-2017"
   }
}

var element = "data.datetime.time";

var result = element.split('.').reduce(function(r, p) {
  return typeof r === 'object' ? r[p] : null; // if r is an object, return the prop value, if not return null
}, { data: data });

console.log(result);

关于javascript - Node js : access json if variable name in string?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46387446/

相关文章:

javascript - 如何向 JavaScript 数组添加子标签

javascript - 基于 ng :repeat 的运行总计

json - 如何在 Angular2 中与其动态交互的 2 个组件中注入(inject)相同的服务

javascript - Pacta.js 中 $.when 的代数实现

javascript - 如何在 JavaScript 中插入一大块 HTML?

javascript - 在 Laravel 5 中以 AJAX 提交表单

javascript - Angular 6 将 Json 数据转换为对象

json - SQL Server 只读取有效 JSON 的第一行

javascript - 无法导入 JavaScript 类。类型错误 : "class" is not a constructor

javascript - 如何在本地使用 GlobalSecondaryIndexes 在 DynamoDB 上创建表?