gpt4 book ai didi

javascript - 在嵌套对象中设置值

转载 作者:行者123 更新时间:2023-11-28 14:11:01 26 4
gpt4 key购买 nike

我尝试通过键将值设置到嵌套数组中。

我的对象看起来像

var Obj = {
key1: {
key2: value,
}
}

我尝试通过key1.key2设置key1,例如

const name = `key1.key2`

Obj[name] = value

我知道我需要像 Obj['key1']['key2'] 那样做,但我只得到一个看起来像 key1 的 string 。键2

最佳答案

如果您不介意使用库,Ramdalodash提供帮助函数,使此类操作变得非常简单

使用 Ramda(对于此特定操作,比 lodash 稍微详细一些,但与 lodash 相比,我更喜欢 Ramda):

const Obj = {
key1: {
key2: 1,
}
}

const name = `key1.key2`

console.log(
R.assocPath(name.split('.'), 2, Obj)
)
// --> { key1: { key2: 2 } }
<script src="https://cdnjs.cloudflare.com/ajax/libs/ramda/0.26.1/ramda.min.js"></script>

使用洛达什:

const Obj = {
key1: {
key2: 1,
}
}

const name = `key1.key2`

console.log(
_.set(Obj, name, 2)
)
// --> { key1: { key2: 2 } }
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.15/lodash.min.js"></script>

关于javascript - 在嵌套对象中设置值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59439584/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com