Aktywne Wpisy

reddin +550
Do tragicznego w skutkach wypadku doszło w Ninkowie (gm. Borkowice). Ze wstępnych ustaleń wynika, że kierujący toyotą ciągnął na pasie holowniczym wózek inwalidzki, na którym siedział 92-latek. Na łuku drogi mężczyzna spadł z wózka i poniósł śmierć na miejscu.
#policja #wypadek #polskiedrogi
p0melo +15
Nie polecam przebranżowienia się do IT, szczególnie kobietom. Miałem znajomą która studiowała informatykę i po latach wyjechała z polski, że względu na toksyczne środowisko polskich informatyków. Rasiści, seksiści, troglodyci.
Na studiach laski słyszą od podstarzałych profesorów, że złe studia wybrały, pewnie męża szukają, lepiej niech zajmą się domem i dziećmi. Po skończeniu studiów dostają pracę, od kolegów z pracy słyszą że dostały prace za ładne oczy a poza tym nic nie umieją.
Na studiach laski słyszą od podstarzałych profesorów, że złe studia wybrały, pewnie męża szukają, lepiej niech zajmą się domem i dziećmi. Po skończeniu studiów dostają pracę, od kolegów z pracy słyszą że dostały prace za ładne oczy a poza tym nic nie umieją.




foreach($rooms as $room) {if($room->isFree()) {
return $room;
}
}
Czy da się zrobić coś takiego w js? Czy muszę pisać w poniższy sposób?
var room = null;
this.rooms.forEach(function(el) {
if(el.isFree()) {
room = el;
}
});
return room;
#javascript #webdev
return this.rooms.filter(function(room) { return room.isFree(); })[0]return this.rooms.filter(function(room){ return room.isFree(); });
to Ci zwróci tablicę pustych pokoi ;)
var room = this.rooms.find(el => el.isFree())
Komentarz usunięty przez autora
Patrząc już pod kątem optymalizacyjnym to niekoniecznie unikać, ale powodować by heurystyka działała jak najlepiej. Skoro i tak wyjście z pętli będzie cache missem to optymalniej jest zrobić for(...) {} w którym wszystkie elementy będą trafiały w cache (isFree() == false) oprócz tego jednego elementu po którym zrobimy return i zdejmiemy funkcje ze
Z reguły i tak bierze się pod uwagę pesymistyczną złożonośc, więc oba mają
Tak więc już bardziej praktycznie, pomijając kwestie wydajności, to gdy natrafisz na taką sytuację to zamiast filter prościej jest użyć czytelniejszego algorytmu:
let emptyRoom = rooms.find( r => r.isEmpty() );
https://developer.mozilla.org/pl/docs/Web/JavaScript/Referencje/Obiekty/Array/find