Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >当级别以数组形式给出时,转换对象列表

当级别以数组形式给出时,转换对象列表
EN

Stack Overflow用户
提问于 2019-05-08 19:39:34
回答 2查看 77关注 0票数 2

假设我有一个数组,它告诉我标签列表和将它们添加到JSON对象中所需的值。你是如何改变它的呢?

所以基本上我有一个数组和一个值100

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
arr = ["1", "Male"]

应该这样把它转换成一个对象。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
obj = {
    "1":{
        "Male":100
        }
    }
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-05-08 19:50:22

您可以保存最后一个属性并减少对象。最后,将该值赋给最后一个属性。

这个解决方案考虑了已经给定的属性。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
function setValue(object, path, value) {
   var last = path.pop();
   path.reduce((o, k) => o[k] = o[k] || {}, object)[last] = value;
}

var object = {};

setValue(object, ["1", "Male"], 100);
console.log(object);

setValue(object, ["1", "Female"], 200);
console.log(object);
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
.as-console-wrapper { max-height: 100% !important; top: 0; }

票数 2
EN

Stack Overflow用户

发布于 2019-05-08 19:50:57

您可以使用reduceRight来实现这一点。使用value作为reduce的initialValue,并在每个循环中创建一个新的嵌套级别。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
function createObj(paths, value) { 
  return paths.reduceRight((r, key) =>  ({ [key] : r }), value)  
}

console.log(createObj(["1", "Male"], 100))
console.log(createObj(["level 1", "level 2", "level 3" ], "value"))

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56047921

复制
相关文章
props的字符串数组形式和对象形式
以字符串数组形式列出的 props: props: ['userCode', 'userName', 'placehodler'] 希望每个 prop 都有指定的值类型。这时,你可以以对象形式列出 props 以对象形式的props: props: { array: { type: Array, default () { return [] } }, object: { type: Obj
xyzzz
2020/11/14
2K0
jquery多组时间以对象数组形式保存
需求: 1:点击新增区域的按钮的时候,会新增一行输入框,可以选择输入数据,输入时间 2:输入完成之后,点击保存按钮,将输入的时间以对象数组的格式提交给后端 3:每一组时间是一个对象,每个对象包括开始时间和结束时间, 三组就是三个对象,存放在数组里面。 提交到后端的格式 {"criminalFences":[{"startTime":"09:00","stopTime":"17:00"},{"startTime":"09:00","stopTime":"17:00"},{"startTime":"09:00"
王小婷
2020/09/27
9550
vue列表渲染(数组和对象)
简单看一下列表渲染(数组列表) 数组列表渲染     < div id="app">         <div v-for="(item,index) in list">             {{item}}-----{{index}}         </div>     </div>     <script>         var app=new Vue({             el:"#app",             data:{                 list:["吃饭",
十月梦想
2018/10/09
3.3K0
JS根据列表排列对象数组
] const sortInfo = ['f','c','b'] nodeData_.sort((a, b) => {
小仙女闯运维
2020/09/23
4.5K0
javalist集合转换数组_集合对象转数组
原链接:https://stackoverflow.com/questions/157944/create-arraylist-from-array
全栈程序员站长
2022/09/25
6460
php数组转换对象方法[通俗易懂]
php虽然不能像js那样直接new Object,但php支持匿名类我们直接新建匿名类进行转换就好了
全栈程序员站长
2022/10/01
1.4K0
基因集合的数据框,列表和对象形式
这些都离不开生物学功能数据库,但是数据库不仅仅是GO/KEGG哦,目前最齐全的应该是属于 MSigDB(Molecular Signatures Database)数据库中定义了已知的基因集合:http://software.broadinstitute.org/gsea/msigdb 包括H和C1-C7八个系列(Collection),每个系列分别是:
生信技能树
2022/12/16
1.6K0
基因集合的数据框,列表和对象形式
ArrayList .toArray()转换为[] 数组对象
参考链接: 从ArrayList到Java的Array数组转换:toArray()方法
用户7886150
2020/12/12
1.7K0
列表渲染之数组、对象更新检测
数组更新检测API (opens new window) 对象更新检测API (opens new window)
小小杰啊
2022/12/21
1.3K0
JSON数组形式字符串转换为Map数组 - 崔笑颜的博客
阿里巴巴封装的FastJSON来转换JSON数组形式字符串 package com.zkn.newlearn.json; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import java.util.List; import java.util.Map; /** * 这里我用到的是第一种方式 */ public
崔笑颜
2021/02/22
4.6K0
数组与对象的相互转换[通俗易懂]
前端小伙伴儿时常会遇到需要将服务器返回的数据进行处理的场景,本文介绍了数组与对象相互转换的场景,一起来看看吧~
全栈程序员站长
2022/09/30
2K0
数组与对象的相互转换[通俗易懂]
Java将列表转换为数组,反之亦然
在本文中, 我们将快速学习如何将Java List (例如ArrayList )转换为数组,反之亦然。 如果您希望总体上了解有关ArrayList的更多信息,请随时阅读我们有关Java ArrayLists的文章。
用户7886150
2021/04/28
3.4K0
tp6把对象转换为数组
<?php namespace app\index\controller; use app\BaseController; use think\facade\Db; use app\model\Aa
贵哥的编程之路
2022/05/18
1.2K0
tp6把对象转换为数组
单层XML结构转换为对象数组 - Jackson
上面的XML中,有两个子结构(name, content, hours),因为是单层结构所以都以序号结尾。 这种格式的XML,没办法定义一个完整的对象,再使用Jackson来直接转换。
十毛
2019/12/16
2.7K0
python 列表list输出形式
列表可以完成大多数集合类的数据结构实现。它支持字符,数字,字符串甚至可以包含列表(即嵌套)。
用户7886150
2021/01/09
1.5K0
当 LinkedList 不是列表时,速度快的兔子都追不上!
一旦你被问到这种问题,也证明面试基本上泡汤了--面试官已经实在是找不到其他问题与你交流了。
xjjdog
2022/12/22
2820
当 LinkedList 不是列表时,速度快的兔子都追不上!
以脚本形式运行python库
这一个条目的意思是,我们可以使用python3 -m这样的指令,在终端的命令行内运行python的一些仓库。比如我们常用的pip,就可以通过python3 -m pip install numpy这样的操作指令来运行。还有一个比较常见的上传python编译安装包到pypi网站上面的工具twine,可以通过python3 -m twine的方法来使用。本文我们主要探讨一下如何在代码中,实现python3 -m 这种命令行运行的模式。
DechinPhy
2022/09/02
1.1K0
以脚本形式运行python库
以代码的形式构建 Jenkins
在我们公司,我们尝试使用‘一切事物即代码’的模式,该模式涉及到可复制的基础架构,监控,任务等方面。但是在这篇文章当中,我将向你展示怎样将这种模式运用到 Jenkins 上。是的,我的意思是对于 Jenkins 完全可复制的配置,以及基础架构、插件、凭据、任务以及代码中的其他东西。另外,这篇文章你将解惑下面的疑问:
LinuxSuRen
2020/04/16
1.5K0
以代码的形式构建 Jenkins
数组、列表及字符串如何相互转换?
数组、列表及字符串,是最常用的数据类型。为了操作方便,很多时候,需要进行相互转换。但它们的转换方法总是记不住,能不能帮我们总结一下,它们之间相互转换的方法。
高一峰
2020/09/22
1.5K0
数组、列表及字符串如何相互转换?
java 实现平层数组转换为层级对象
sql insert into tb_tree (CID, CNAME, PID) values (1, '中国', 0); insert into tb_tree (CID, CNAME, PID) values (2, '北京市', 1); insert into tb_tree (CID, CNAME, PID) values (3, '广东省', 1); insert into tb_tree (CID, CNAME, PID) values (4, '上海市', 1); insert into t
用户2436820
2018/09/05
1.4K0

相似问题

当连接键以列表形式给出时,如何修改spark dataframe中连接的列?

15

当以json形式返回对象时访问雄辩关系

432

当值以数组形式存在时,如何转换数组的值?

22

以列表形式移动对象

10

以变量形式存储数组列表

21
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文