Ext.each(boundsExtend, function(value)
{
if(value != record.ID) break;
});
Quindi, come posso interrompere o continuare il ciclo Ext.each?Come interrompere o continuare Ext.each
Ext.each(boundsExtend, function(value)
{
if(value != record.ID) break;
});
Quindi, come posso interrompere o continuare il ciclo Ext.each?Come interrompere o continuare Ext.each
Dal docs:
If the supplied function returns false, iteration stops and this method returns the current index.
Così come nell'esempio del PO (supponendo record
è portata e non nullo):
Ext.each(boundsExtend, function(value) {
if (value != record.ID) {
return false;
}
// other logic here if ids do match
});
noti che il ritorno false
esce completamente i loop, così in questo caso il primo record non corrispondente ignorerà qualsiasi controllo aggiuntivo.
Tuttavia, suppongo che ciò che si sta provando a fare sia il ciclo fino al si trovi il record corrispondente, si faccia un po 'di logica, quindi si interrompa il ciclo. Se questo è il caso, la logica sarebbe in realtà:
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")
});
Qualsiasi altro valore che non è esplicitamente false
(ad esempio null
per impostazione predefinita) non mancherà di tenere il ciclo in corso.
Grande, ma come continuare? –
Restituisce altro che falso. –
Yay I 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
}
});
Ritorna false
a 'rompere' e tornare tutt'altro che false
a 'continuare'.
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
}
})
Ecco un'eccezione simile ottenuta quando non lo faccio e rimuovendo un oggetto. Quindi itemId non c'era. "Uncaught TypeError: Impossibile leggere la proprietà 'itemId' di undefined" – MacGyver