Azure移动服务-服务器端脚本-使用===与零进行比较

Azure Mobile Services - Server Side Scripts - Comparison to zero using ===

本文关键字:比较 使用 移动 服务 服务器端 脚本 Azure      更新时间:2023-09-26

我刚刚开始玩Azure移动服务。它非常酷,但是在尝试更改服务器端数据库脚本时,我注意到了一些奇怪的事情。一件具体的事情是,在写一个简单的语句时,比如:

如果(results.length==0(

它警告我说,在与零进行比较时,我应该使用===而不是===。

有人知道为什么吗?

在松散类型的语言中,使用==(严格相等运算符(而不是==(相等运算符(通常很有用,因为否则在相等检查期间会强制对象的类型。

例如,"0" == 0"" == 0[] == 0

然而,这些=== 0

因此,如果results恰好是一个具有空属性length的对象,就像这样:

var results = {
  length: ""
}

CCD_ 7仍将评估为CCD_。

因为

[] == 0 

是真的,但是

[] === 0

不是。

阅读JavaScript比较运算符(尤其是严格相等(。