您好我想知道是否可以使用ng-if="!!someVar"
获得更好的效果,其中someVar
是定义或未定义的对象而不是ng-if="someVar"
。两者都清楚地在Angular JS中工作我想知道javascript和angular更容易评估什么?
总之,在测试当前$ scope / context中是否存在对象时,这是编写ng-if指令的最佳方法。
ng-if="!!someVar
或ng-if="someVar"
答案 0 :(得分:1)
我认为它真的不重要,但空对象仍然等同于javascript中的真实价值。
!!someVar === true;
显示评价的插图:Multiple Errors Installing Visual Studio 2015 Community Edition
如果您希望对象评估为false,请使用
Object.keys(someVar).length
答案 1 :(得分:1)
如果你使用纯JavaScript,你可能会看到性能提升,但由于你已经在使用The AngularJS ng-if
Directive,我几乎不认为你需要担心{{1}之间的性能差异和ng-if="!!someVar"
以查看该对象是否存在。
我确定您也知道ng-if="someVar"
比ng-if
更受欢迎,因此不建议使用ng-show
。
部分资源: