function querySearch (query) {
var results = query ? $scope.allContacts.filter(createFilterFor(query)) : [];
return results;
}
问号 ?
的含义是什么意思?它是可选的吗?
答案 0 :(得分:0)
这意味着:如果对query
的评估为truthy
(typeof query != 'undefined' && query != null && query != 0 && query != false
),则返回评估$scope.allContacts.filter(createFilterFor(query))
的结果,否则返回一个空数组[]
)。
在这种情况下,它保证始终返回一个数组。
如果query ?
未执行且query
为null
,例如,$scope.allContacts.filter(createFilterFor(query))
可能会抛出一个例外,因此有时会将其用于安全。