假设以前没有定义过w,下面的JS代码给出ReferenceError: w is not defined:

w?.y;

而这段代码只返回undefined:

let w; w?.y;

为什么?.操作员不将not defined视为undefined

推荐答案

这是在第the documentation节中提到的

可选链接不能在100根对象上使用,但可以与未定义的根对象一起使用.

这意味着你必须申报root object,在这种情况下,它是w

Javascript相关问答推荐

没有输出到带有chrome.Devtools扩展的控制台

Google图表时间轴—更改hAxis文本 colored颜色

在Vite React库中添加子模块路径

当试图显示小部件时,使用者会出现JavaScript错误.

为什么useState触发具有相同值的呈现

Chart.js-显示值应该在其中的引用区域

WhatsApp Cloud API上载问题:由于MIME类型不正确而导致接收&Quot;INVALID_REQUEST";错误

在HTML语言中调用外部JavaScript文件中的函数

在我的index.html页面上找不到我的Java脚本条形图

使用Nuxt Apollo在Piniastore 中获取产品细节

Reaction组件在本应被设置隐藏时仍显示

钛中的onClick事件需要在两次点击之间等待几秒钟

在表单集中保存更改时删除';禁用';

在Odoo中如何以编程方式在POS中添加产品

JavaScript:如果字符串不是A或B,则

无法设置RazorPay订阅API项目价格

无法使用npm install安装react-dom、react和next

谷歌饼图3D切片

webpack 5和mini-css-extract-plugin在将scss保存到css文件后不加载css

查找函数句柄的模块/文件