为什么WebStorm警告我,我的for
循环最多只运行一次?
if (data[i].name) {
for (var j = 0; j < data[i].name.length; j++) {
hobby = $scope.users[data[i].name].hobby;
sport = $scope.users[data[i].name].sport;
education = $scope.users[data[i].name].education;
break;
}
}
问题出在哪里?我在这里缺少什么?
答案 0 :(得分:2)
正如评论中所提到的,循环最多只执行一次,因为你在第一次迭代后执行break
。
但是,从查看代码开始,您可能根本不需要循环。看起来您要做的就是检查是否设置了字符串data[i].name
,如果是,请根据该属性检索一些属性,对吗?
如果是这样,请删除循环,因为它对发布的代码段没有任何贡献:
if (data[i].name) {
hobby = $scope.users[data[i].name].hobby;
sport = $scope.users[data[i].name].sport;
education = $scope.users[data[i].name].education;
}
假设data[i].name
是一个字符串,data[i].name.length
只会给你字符串的长度。