【发布时间】:2016-10-23 02:03:07
【问题描述】:
这很令人惊讶,但简单的函数 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;
}
【问题讨论】:
-
不,该对象不存在:“名称”与 item.Name 相同的对象存在,这是非常不同的。
-
好吧,但是 item.Name 只是字符串,不是吗?
-
您在对象数组中搜索字符串,它如何知道您要匹配 .Name 属性?
-
你试过在控制台中调试这个吗?如果在第 211 行设置断点,就可以在控制台执行 JS。这将是调试问题的最快方法。
标签: javascript angularjs