我通常使用以下测试来测试是否定义了 JavaScript 变量:
if (typeof a == 'undefined')
a = 'default value'
但是,我看到很多人建议使用以下内容更安全:
if (typeof a === 'undefined')
a = 'default value'
我知道==
和===
运算符之间的区别,但我无法理解为什么typeof a == 'undefined'
可能不安全。
您能否提出第一个代码示例不安全或可能导致问题的情况?另外,使用后一种语法比第一种有什么优势?