Ext.each(boundsExtend, function(value)
{
if(value != record.ID) break;
});
Jak mogę przerwać lub kontynuować pętlę Ext.each?Jak złamać lub kontynuować Ext.each
Ext.each(boundsExtend, function(value)
{
if(value != record.ID) break;
});
Jak mogę przerwać lub kontynuować pętlę Ext.each?Jak złamać lub kontynuować Ext.each
Z docs:
If the supplied function returns false, iteration stops and this method returns the current index.
Tak jak w przykładzie PO jest (zakładając record
jest w zakresie i nie jest pusta):
Ext.each(boundsExtend, function(value) {
if (value != record.ID) {
return false;
}
// other logic here if ids do match
});
Uwaga że powrót false
wyjście z pętli całkowicie, tak w tym przypadku pierwszy rekord nie pasujący pominie dodatkowe sprawdzanie.
Jednak domyślam się, że tak naprawdę próbujesz zrobić pętlę , aż do znajdziesz pasujący rekord, wykonasz jakąś logikę, a następnie zwiążesz pętlę. Jeśli to przypadek, logika byłby rzeczywiście:
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")
});
Każda inna wartość, która nie jest wyraźnie false
(np null
domyślnie) będzie utrzymywać pętlę dzieje.
Świetnie, ale jak kontynuować? –
Zwraca cokolwiek poza fałszem. –
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
}
});
Powrót false
do 'przerwy' i nic poza false
do 'continue' powrotu.
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
}
})
Oto podobny wyjątek, jaki otrzymałem, gdy tego nie robiłem i usuwanie obiektu. Dlatego itemId nie było. "Uncaught TypeError: Nie można odczytać właściwości" itemId "z undefined" – MacGyver