CoffeeScript之,存在操作符“?”

在javascript中,我们调用对象变量的某个方法之前,经常会向下面的代码一样判断该对象是否存在,该变量定义过并且值不是null的话就调用相应的方法。

if (typeof p !== "undefined" && p !== null) {

  p.sayHello();

}

到了CoffeeScript中,上面的代码直接被简化成:

p?.sayHello()

意思就是变量p定义且被实例化过,则调用“sayHello”方法,否则就不调用。

一个“?”号代替了对应的javascript代码的条件判断部分,即能提高效率又能便于读懂而且工作的很好。

这样的语法糖何乐而不为呢!

^-^

 

你可能感兴趣的:(coffeescrip)