gpt4 book ai didi

javascript - 是否有类似可选链的东西在 javascript 中进行赋值

转载 作者:行者123 更新时间:2023-12-04 08:51:47 33 4
gpt4 key购买 nike

在访问数据时,可选链是一个强大的功能,例如

const options = cache.[server]?.[channel]?.[service]
现在在写入数据时,我们通常需要做一些类似的事情
cache[server] ??=  {}
cache[server][channel] ??= {}
cache[server][channel][service] = options
有没有像可选链接这样的东西使分配像这样更轻(也许在一行中)?就像是 :
cache[server]??{}:[channel]??{}:[service]=options
在这种情况下添加 {}[]就在之后将允许指示如果无效则预期分配的内容。

正如@Bergi 所提议的,最接近的方法是这样写:
((cache[server] ??= {})[channel] ??= {})[service] = options

最佳答案

您可以使用括号来转换

cache[server] ??= {}
cache[server][channel] ??= {}
cache[server][channel][service] = options
成一个单一的表达
((cache[server] ??= {})[channel] ??= {})[service] = options

关于javascript - 是否有类似可选链的东西在 javascript 中进行赋值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64063651/

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