gpt4 book ai didi

javascript - Angularjs检查数组中是否存在传递值

转载 作者:数据小太阳 更新时间:2023-10-29 04:54:12 25 4
gpt4 key购买 nike

我正在尝试使用 AngularJS 将两个文本字段值传递到数组中,但我还想检查传递的第一个值是否已存在于数组中。如果是,我不想再添加它,如果它不存在,则添加值。我可以让它添加值,但我在尝试检查数组中是否已经存在姓氏值时遇到了困难。我找到了一些我试图遵循的例子,但我似乎无法让它们发挥作用。感谢您的帮助!

<div class="panel-body">
<div ng-controller="TodoCtrl">
<ul>
<li li ng-repeat="todo in todos">
{{todo.text}}, {{todo.name}}
</li>
</ul>
<form class="form-horizontal">
<input type="text" ng-model="formTodoLast" ng-model-instant>
<input type="text" ng-model="formTodoFirst" ng-model-instant>
<button class="btn" ng-click="addTodo()"><i class="icon-plus"></i>Add</button>
</div>
</div>

待办事项

function TodoCtrl($scope) { 
$scope.todos = [];

$scope.addTodo = function () {

if($scope.todos.indexOf(text:$scope.formTodoLast) == -1) {
$scope.todos.push({text:$scope.formTodoLast, name:$scope.formTodoFirst});
$scope.formTodoText = ' ';
$scope.formTodoName = ' ';
}
}
}

最佳答案

正如 Craig 所说,您需要这样遍历数组

var addToArray=true;
for(var i=0;i<$scope.todos.length;i++){
if($scope.todos[i].text===$scope.formTodoLast){
addToArray=false;
}
}
if(addToArray){
$scope.todos.push({text:$scope.formTodoLast, name:$scope.formTodoFirst});
}
$scope.formTodoText = ' ';
$scope.formTodoName = ' ';

关于javascript - Angularjs检查数组中是否存在传递值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22178199/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com