当前位置: 首页 > 面试题库 >

从嵌套键串构建嵌套JSON

沈琛
2023-03-14
问题内容

我有正在使用nodeJS读取的csv文件。我在阅读之前将每个文件转换为文本。

文件中的每一行都有以’=’分隔的数据。

每行看起来像

data.location.degree.text=sometexthere

“ =“之前的第一部分代表我应用程序中json对象的索引。我的目的是解析此数据并为其构建json表示,以便上面的行成为

data:{
  location:{
    degree:{
      text: 'sometexthere'
    }
  }
}

使用javascript / node js; 如何将应该表示嵌套JSON键序列的字符串转换为上述json对象?


问题答案:

您可以分割路径并检查以下元素是否存在。如果没有,则将对象分配给新属性。

然后返回该属性的值。

最后分配值。

function setValue(object, path, value) {

    path = path.replace(/[\[]/gm, '.').replace(/[\]]/gm, ''); //to accept [index]

    var keys = path.split('.'),

        last = keys.pop();



    keys.reduce(function (o, k) { return o[k] = o[k] || {}; }, object)[last] = value;

}



var data = {};



setValue(data, 'location.degree.text', 'sometexthere');

console.log(data);


 类似资料:
  • 下面是我使用的代码 这就是 API 需要发布的方式 我收到一个错误,指出“另一个.child字段是必需的。” 我如何通过restAsared发布这个?其他不需要通过嵌套发布的API可以工作,所以我假设这就是它失败的原因。

  • 问题内容: 我已经阅读了从平面csv创建嵌套JSON的内容,但对我而言没有帮助。 我有一个很大的电子表格,它是由Google文档创建的,包含11行和74列(某些列未占用)。 我在Google云端硬盘上创建了一个示例。导出为a时,它看起来像这样: 现在,我想要一个结构,如下所示: 以此类推。 我的理论方法是逐行遍历文件(这是第一个问题:现在每一行等于一行,但有时是几行,因此我需要计算逗号?)。每行等

  • 问题内容: 我今天才刚开始编写Go(有0个经验),想知道Go是否支持任何形式的“构建所有源文件” 。 我的项目结构是 当我做 这失败了,这是正确的,因为所有源文件都在子包中。 是否有一个命令可以构建所有子包, 而无需显式列出每个 子包? 问题答案: 你以后到基本目录,使用注意,有3个阶段,因为它是一个省略号。这将递归地构建所有子目录。当然,您始终可以从任何地方进行操作而无需访问目录。 对于使用依赖

  • 我正在为我的类开发一个简单的jsp/servlet/tomcat webapp。教授要求我们使用与默认动态web项目结构略有不同的文件夹结构。他不想使用webcontent文件夹,而是想要src/main/java和src/main/webapp下的所有源代码。 当我运行应用程序时,我的欢迎文件显示良好,但当我试图访问我的servlets时,我得到: ClassNotFoundException.

  • 本文向大家介绍C++ 嵌套类/结构,包括了C++ 嵌套类/结构的使用技巧和注意事项,需要的朋友参考一下 示例 甲class或struct还可以包含另一个class/struct内部本身的定义,这被称为“嵌套类”; 在这种情况下,包含类称为“封闭类”。嵌套类定义被认为是封闭类的成员,但在其他方面则是单独的。 从封闭类的外部,可以使用范围运算符访问嵌套类。但是,在封闭类的内部,可以使用没有限定符的嵌套

  • 4. 嵌套结构体 结构体也是一种递归定义:结构体的成员具有某种数据类型,而结构体本身也是一种数据类型。换句话说,结构体的成员可以是另一个结构体,即结构体可以嵌套定义。例如我们在复数的基础上定义复平面上的线段: struct segment { struct complex_struct start; struct complex_struct end; }; 从第 1 节 “复合类型与结构体”