2016-04-26 40 views
0

我想知道在AngularJS中检查变量是nullundefined哪种方法是最好的方法。AnuglarJs最好的实践来检查,如果undefined和null

第一种方式:

if(!myVar){...} 

方式二:

if(myVar === null || myVar === undefined){...} 

第三条道路:

if(angular.isUndefined(myVar) || myVar === null){...} 

我prefere第一个,但我想确定它是否是最好的方法。

最后一个问题是我使用了一个角度函数来测试它是否是未定义的,并使用本地JavaScript方法来检查它是否为空。

谢谢大家!

+1

使用OR条件代替和。 – Tushar

+0

第一种方式还包括像false,0,“”的falsy值。 –

+0

@MichaelLiu诚然,尽管在许多情况下,这正是你想要的。 – Casey

回答

0

做到这一点的最好办法,这是路由Coffeescript too goes是:

if (typeof MyVariable === "undefined" || MyVariable === null){ ... } 
+0

这种方法是什么使它成为最好的?我想知道这是什么导致Coffeescript的制作者选择这种方法。 –

+0

做了一些更多的研究,并找到[这篇文章](http://stackoverflow.com/questions/2703102/typeof-undefined-vs-null),谈论了为什么这种方法更好一点。与参考错误有关。但我仍然怀疑这是否是最好的方法。 –

0

我想依赖的情况,通常我用的是第一种方式,因为平时我验证时,该变量为0 ,空数组,未定义或null,如果你的目标是验证只有值null和undefined我认为最好的方式是第二种方式,第三种方式是好的,但强制角度的denied。