exe*_*ook 10 javascript boolean
omp比较任何东西undefined已被讨论了很多次,但今天我不得不比较数组中的项目,在某些时候,数组中的项目可能是undefined,我很好奇他们将如何相互比较.我发现那undefined == undefined是true,但同时undefined >= undefined却不是true.等一下,如果事情是平等的,那么大或平也意味着是真的吗?这就是逻辑的运作方式!
我可以接受ECMA标准所说的任何内容,我相信这些人是理智的,并且有充分的理由做好一切.但是,地球上的这种比较行为可能是什么原因呢?如果我正在实现,undefined我将返回undefined任何具有undefined操作数的比较.但他们选择返回boolean,然后为什么结果是这样的?
现在我认为最好的解决方案就是undefined以多种if语句的特殊方式处理任何外观.
undefined === undefined: true
undefined == undefined: true
undefined !== undefined: false
undefined != undefined: false
undefined < undefined: false
undefined > undefined: false
undefined <= undefined: false
undefined >= undefined: false
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
152 次 |
| 最近记录: |