这是令人惊讶的,但简单的函数array.IndexOf不工作。Java脚本array.indexOf不工作
$scope.nextProduct = function (pos, item) {
switch (pos) {
case 0: product = $scope.Menu[0].Breakfast
break
case 1: product = $scope.Menu[0].Lunch
break
case 2: product = $scope.Menu[0].BeforTraining
break
case 3: product = $scope.Menu[0].AfterTraining
break
case 4: product = $scope.Menu[0].Dinner
break
default: product = $scope.Menu[0].Breakfast
break
}
var index = product.indexOf(item.Name);
product[index - 1].IsSelect = false;
product[index + 1].IsSelected = true;
}
indexOf返回-1但我完全确定该项存在于数组中。这里有什么可能是错的?
没有,对象不存在:一个对象,其“名”是一样的item.Name存在,这是非常不同的。 –
好吧,但item.Name它只是字符串,不是吗? –
您在一个字符串中搜索对象数组,它如何知道您想匹配.Name属性? –