javascript - typeof x === 'undefined' 是做什么的?

标签 javascript reactjs

<分区>

在我们的代码中找到了这个。有什么区别:

if (typeof isValid === 'undefined') {

if (isValid === 'undefined') {

为什么有人会使用第一个,我不明白这是怎么回事?

最佳答案

这个:

if (typeof isValid === 'undefined') {

检查 isValidtype 是否为 "undefined"。它可能是 "undefined",因为 A) isValid 是一个变量,其中包含值 undefined,或者 B) 它是一个未声明的标识符。

这个:

if (isValid === 'undefined') {

检查变量 isValid 是否包含字符串 "undefined"。变量必须存在(例如,已声明),否则将抛出 ReferenceError

您会看到第一种情况,作者不确定变量 isValid 是否已声明,或者因为他们担心 undefined 可能已在代码出现的范围,或者因为很久以前他们担心一个领域中的未定义(松散:窗口/选项卡)并且另一个领域中的 undefined 不会是 === 彼此。 (如果那是真的,那至少十年都没有了。)

关于javascript - typeof x === 'undefined' 是做什么的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57923236/

相关文章:

javascript - 在再次调用之前取消调用被调用的函数

reactjs - 调用 firestore collection() 在博览会上不起作用

javascript - 如何快速将多行附加到 div(一次一行)并使用 Vue 滚动到底部?

css - Material UI,左侧为 Appbar Logo ,中间为 Tabs

html - React.renderToStaticMarkup 输出十六进制代码

reactjs - 如何从 Spring Boot 应用程序提供 NextJs 应用程序?

JavaScript 获取数组中最后一项的索引

javascript - 仅包含特定数字的 HTML 输入框

javascript - 在 ui-router 中将可选参数作为父状态

javascript - 将字符串提取到数组正则表达式中