好的尝试做我应该做的事情,我需要使用ng-repeat和关联数组。完全失去了为什么这不起作用。它与基于数字的数组键完美配合,但不适用于文本字符。
function HelloCntl($scope) {
$scope.friends = [];
$scope.friends[0] ='John',
$scope.friends[1]= 'Mary',
$scope.friends['aksnd']= 'Mike',
$scope.friends['alncjd']= 'Adam',
$scope.friends['skdnc']= 'Julie'
}
----
<div ng-controller="HelloCntl">
<ul>
<li ng-repeat="friend in friends">
<span>{{friend}}</span>
</li>
</ul>
</div>
我也把它放在一起这是小提琴,以显示发生了什么 http://jsfiddle.net/b9g0x7cw/4/
我在这里做错了什么?我错过了一些明显的东西吗?
谢谢你们!
答案 0 :(得分:3)
在JavaScript中,我们没有关联数组 - 我们有对象:
更新了小提琴:http://jsfiddle.net/edut808r/
angular.module('MyApp', []).filter('removeAdam', function() {
})
.controller('HelloCntl', function($scope) {
$scope.friends = {
asdf:'John',
dkfls: 'Mary',
aksnd: 'Mike',
alncjd: 'Adam',
skdnc: 'Julie'
}
});
答案 1 :(得分:0)
不要使用关联数组!
http://andrewdupont.net/2006/05/18/javascript-associative-arrays-considered-harmful/
2不使用关联数组的原因
http://jsfiddle.net/3kppwhh6/1/
// using array
var friendsArr = [];
friendsArr['one']='one';
friendsArr['two']= 'two';
friendsArr.length; // 0
Object.keys(friendsArr).length; //2
//Using object
var friendsObj = {};
friendsObj['one'] ='one';
friendsObj['two'] = 'two';
Object.keys(friendsObj).length; //2