以下测试是否有更短的记号?
(typeof x != "undefined") ? x : y;
一种x || y
,但仅对未定义起作用(而不对假值)
类似于C#的??
答案 0 :(得分:1)
实际上,这个问题应该改写,因为javascript中是否有空合并运算符?
答案是不,不是现在,但是应该很快就会到来。请参阅提案here和implementation status here。
答案 1 :(得分:-1)
如果确定未定义永远不会被覆盖,则可以使用x === undefined
之类的东西。这将返回true
或false
,您可以对其进行测试。