Ext.each(boundsExtend, function(value)
{
if(value != record.ID) break;
});
Alors comment rompre ou continuer la boucle Ext.each?Comment rompre ou continuer Ext.each
Ext.each(boundsExtend, function(value)
{
if(value != record.ID) break;
});
Alors comment rompre ou continuer la boucle Ext.each?Comment rompre ou continuer Ext.each
De l'docs:
If the supplied function returns false, iteration stops and this method returns the current index.
Ainsi, comme dans l'exemple de l'OP (en supposant record
est portée et non nul):
Ext.each(boundsExtend, function(value) {
if (value != record.ID) {
return false;
}
// other logic here if ids do match
});
Notez que le retour false
sort complètement la boucle, de sorte dans ce cas, le premier enregistrement non-correspondant contournera toute vérification supplémentaire.
Cependant, je suppose que ce que vous essayez vraiment de faire est la boucle jusqu'à vous trouvez l'enregistrement correspondant, faire de la logique, puis court-circuiter la boucle. Si tel est le cas, la logique serait en fait:
Ext.each(boundsExtend, function(value) {
if (value === record.ID) {
// do your match logic here...
// if we're done, exit the loop:
return false;
}
// no match, so keep looping (i.e. "continue")
});
Toute autre valeur qui ne sont pas explicitement false
(par exemple null
par défaut) gardera la boucle en cours.
Excellent, mais comment continuer? –
Renvoie tout sauf false. –
Yay je up-modded Brian –
var countries = ['Vietnam', 'Singapore', 'United States', 'Russia'];
Ext.Array.each(countries, function(name, index, countriesItSelf) {
console.log(name);
});
Ext.Array.each(countries, function(name, index, countriesItSelf) {
if (name === 'Singapore') {
return false; // break here
}
});
Retour false
de 'casser' et retourner quoi que ce soit, mais false
à 'continuer'.
var array = [1, 2, 3];
Ext.each(array, function(ele){
console.log(ele);
if(ele !== 2){
return false; // break out of `each`
}
})
Ext.each(array, function(ele){
console.log(ele);
if(ele !== 3){
return true; // continue
}
})
Voici une exception semblable à celle que j'ai obtenue en ne faisant pas cela, et en supprimant un objet. Par conséquent itemId n'était pas là. "TypeError non intercepté: Impossible de lire la propriété 'itemId' de undefined" – MacGyver