对象真假判断

Posted have-a-try

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了对象真假判断相关的知识,希望对你有一定的参考价值。

3.5.6 编写ProdctsList的视图模板

2. isSelected

代码如下:

  isSelected(product: Product): boolean {
    if (!product || !this.currentProduct) {
      return;
    }

    return product.sku === this.currentProduct.sku;
  }

  这里直接对对象进行了判断,结果不清楚后面测试,猜测是判断对象非空。

根据javascript权威指南对布尔值的解释:

  undefined

  null

  0

  -0

  NaN

  ""

以上均为负数。

来看一个例子,假设变量o是一个对象或是null,可以通过一条if语句来显式地检测o是否是非null值:

if (o !==null)

不等操作符“!==”将o和null比较,并得出结果为true或false。

可以先忽略这里的比较语句,null是一个假值,对象是一个真值

if (o)

对于第一种情况,只有当o不是null时才会执行if后的代码,

第二种情况的限制没那么严格:只有o不是false或任何假值(比如null或undefined)时它才会执行这个if。

到底选用哪条语句取决于期望赋给o的值是什么。

如果需要将null与0或""区分开来,则需要使用一个显式的比较。

 

JavaScript权威指南 第六版 3.3布尔值

以上是关于对象真假判断的主要内容,如果未能解决你的问题,请参考以下文章

js -03课 -03 js中的真假判断

shell 编程if条件判断与if 真假判断

DRF解析组件以及序列化组件

Python内置类型——真值测试

javascript字符串真假判断

javascript非字符串真假判断