我试图做到这一点:函数包含在angularJs
for(i=0;i<$scope.users.length;i++){
var name= $scope.users[i].name;
if(!(name.contains('ext'))){
$scope.users.splice(i,1);
}
}
但我有一个错误有关函数包含。 我也尝试过匹配功能,并且遇到同样的问题。 有人可以帮助我吗?
我试图做到这一点:函数包含在angularJs
for(i=0;i<$scope.users.length;i++){
var name= $scope.users[i].name;
if(!(name.contains('ext'))){
$scope.users.splice(i,1);
}
}
但我有一个错误有关函数包含。 我也尝试过匹配功能,并且遇到同样的问题。 有人可以帮助我吗?
字符串没有.contains()
方法。
用途:
if (name.indexOf('ext') === -1) {
...
}
ES6有String.prototype.includes()
方法,但是这是目前仅在Chrome和Firefox支持。现在你最好使用上述方法。
您的环路也不会工作,因为您在遍历数组时正在从数组中删除元素。你会做得更好:
$scope.users = $scope.users.filter(function (user) {
return user.name.indexOf('ext') !== -1;
});
你如何使用includes?
或者您可以尝试name.indexOf('ext') === -1