用于精确迭代的Javascript for循环
我有一个for循环将随机数目的唯一元素从一个大数组推送到另一个小数组中。我想把确切数量的元素放入这个小数组中用于精确迭代的Javascript for循环,javascript,angularjs,Javascript,Angularjs,我有一个for循环将随机数目的唯一元素从一个大数组推送到另一个小数组中。我想把确切数量的元素放入这个小数组中 $scope.word_pair = [ {'word':'Carla', 'pair':'Lion'}, {'word':'Sophie', 'pair':'Lotta'}, {'word':'Jannes', 'pair':'Stubbi'}, {'word':'Martin', 'pair':'Wolle'}, {'word':'Flo',
$scope.word_pair = [
{'word':'Carla', 'pair':'Lion'},
{'word':'Sophie', 'pair':'Lotta'},
{'word':'Jannes', 'pair':'Stubbi'},
{'word':'Martin', 'pair':'Wolle'},
{'word':'Flo', 'pair':'Ign'},
{'word':'Rere', 'pair':'Rose'},
{'word':'Jean', 'pair':'Tamara'},
{'word':'Memo', 'pair':'Elk'},
{'word':'Nila', 'pair':'Naph'}
];
/* To select limited random items to display */
var displayCount = 3 //count should change at each level
$scope.randomWord_pair = []
var numbers = [];
for (var i = 0; i <= displayCount; i++) {
var randomNumber = Math.floor(Math.random() * 4);
if (numbers.indexOf(randomNumber) == -1) {
numbers.push(randomNumber);
$scope.randomWord_pair.push($scope.word_pair[randomNumber])
}
}
这里displayCount决定我想要在我的randomWord\u对数组中有多少个元素。然而,有时它会在随机词对数组中提供除3个元素以外的其他元素
我怎样才能修好它 有两个原因:
你循环太多了。i=0;有两个原因:
你循环太多了。i=0;然而,这里有一个问题:$scope.randomWord\u pair.length
while ($scope.randomWord_pair.length < displayCount)
var randomNumber = Math.floor(Math.random() * 4);
var randomNumber = Math.floor(Math.random() * $scope.word_pairs.length);
// -------------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^