作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在访问数据时,可选链是一个强大的功能,例如
const options = cache.[server]?.[channel]?.[service]
现在在写入数据时,我们通常需要做一些类似的事情
cache[server] ??= {}
cache[server][channel] ??= {}
cache[server][channel][service] = options
有没有像可选链接这样的东西使分配像这样更轻(也许在一行中)?就像是 :
cache[server]??{}:[channel]??{}:[service]=options
在这种情况下添加
{}
或
[]
就在之后将允许指示如果无效则预期分配的内容。
((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/
我正在尝试用 Swift 编写这段 JavaScript 代码:k_combinations 到目前为止,我在 Swift 中有这个: import Foundation import Cocoa e
我是一名优秀的程序员,十分优秀!