J'ai la boucle for suivante, et lorsque j'utilise la fonction splice()
pour supprimer un élément, j'obtiens alors que 'seconds' est indéfini. Je pourrais vérifier s'il est indéfini, mais je pense qu'il y a probablement un moyen plus élégant de le faire. L'objectif est de supprimer simplement un élément et de continuer.
for (i = 0, len = Auction.auctions.length; i < len; i++) {
auction = Auction.auctions[i];
Auction.auctions[i]['seconds'] --;
if (auction.seconds < 0) {
Auction.auctions.splice(i, 1);
}
}
14 votes
En plus de l'itération en arrière et de l'ajustement de la longueur, vous pouvez aussi simplement placer les membres que vous voulez dans un nouveau tableau.
3 votes
Pourquoi dites-vous
Auction.auctions[i]['seconds']--
au lieu deauction.seconds--
?0 votes
Vous voudrez probablement regarder dans la fonction prédéfinie .shift() ;