为啥必须在可选链接之前使用点运算符 - 在函数之前? [复制]

Posted

技术标签:

【中文标题】为啥必须在可选链接之前使用点运算符 - 在函数之前? [复制]【英文标题】:Why is it necessary to use the dot operator before the optional chaining - before a function? [duplicate]为什么必须在可选链接之前使用点运算符 - 在函数之前? [复制] 【发布时间】:2021-08-03 23:29:20 【问题描述】:

这就是图片

如您所见,为什么在尝试执行可选链接后我必须使用点运算符?

我试图排除它,但它显示错误。

感谢任何帮助。

【问题讨论】:

因为这是该功能的语法。 @Pointy 谢谢,不知道。 @HereticMonkey 是的,谢谢 【参考方案1】:

原因是??. 是两个不同的东西。只有后者是选项链,所以如果你去掉句号,你就有一个三元运算的开始。

还要注意可选链?.不是一个运算符,而是一个特殊的语法结构 src

【讨论】:

感谢您的帮助【参考方案2】:

这就是指定语法的方式。

为什么?因为没有点,? 是模棱两可的,可以改为条件运算符表达式 (… ? (…) : …) 的开头。为了使解析更容易(不必提前查找匹配的:),紧跟在问号后面的点是必需的。

【讨论】:

以上是关于为啥必须在可选链接之前使用点运算符 - 在函数之前? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

为啥在 C 和 C++ 中的算术运算之前必须将 short 转换为 int?

如何在可选类型中使用 numpy

为啥在可重复读取中会发生写入偏斜?

在可选类型上调用静态函数

在可管道 rxjs 运算符的组合管道中捕获错误

为啥在使用单指针传递给函数时必须对二维数组进行类型转换?