TIL: Today I Learned

Dzisiaj też przypomniałem sobie o WebHint:

apka, która pomaga znajdować rzeczy do poprawienia na froncie zadanej strony :slight_smile:

1 Like

TIL fajny zbiór rozwiązań dla JS’a

https://javascript.info/

2 Likes

wygląda MEGA

1 Like

TIL, że DOM inspector w FF podświetla elementy, które mają scroll overflow <3

image

2 Likes

TIL, że konsola JS w FF 71 ma możliwość wpisywania wielolinijkowych komend <3

2 Likes

TIL o liście Awesome Human Tech, na której są aplikacje i usługi cyfrowe zgodne z wartościami wytyczonymi przez Center for Humane Technology:

2 Likes

TIL o stronie z tłumaczeniem działania zadanych linijek basha - explainshell.com, warto mieć pod ręką podczas czytania cudzych bashowych skryptów :stuck_out_tongue:

2 Likes

LIL (Lately I Learned?) przy okazji szukania informacji o możliwości robienia zdjęć w PWA natknąłem się na stronę What Web Can Do Today - spis ciekawych, w kontekście PWA, API dostępnych w przeglądarkach.

2 Likes

Jako osoba niekorzystająca na co dzień z JSa poza okazyjnym skryptem i czytaniem kodu na potrzeby psucia go mogę odkrywać Amerykę na nowo, ale #TIL, że dla:

mapKeys = new Map([[1, 'a'], [2, 'b'], [3, 'c']]).keys();

pierwszym efektem Array.from(mapKeys) będzie [1, 2, 3], ale już drugie wywołanie Array.from(mapKeys) zwróci nam pustą tablicę.

Na wszelki wypadek śpieszę z wyjaśnieniem, że to dlatego że przy pierwszym wywołaniu from wyczerpujemy cały iterator - bo .keys() zwraca iterator, a nie listę :wink:

2 Likes

Yup, do tej refleksji też doszłam porównując zachowanie w stosunku do robienia jednego Arraya z drugiego :slight_smile:

1 Like

TIL: for await...of https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for-await...of

2 Likes

Łooo, zastanawiam sie do czego mozna to uzyc :thinking:

TIL, że w JS-ie domyślna wartość danego argumentu funkcji może być zależna od wartości wcześniejszych argumentów:

1 Like

TIL, że na Linuksie można również wlączyć tryb czarno biały <3 Wystarczy przestawić się na Compiz

Można także wybrać jeden z licznych innych fitrów i przełączać się między nimi skrótami klawiaturowymi. Albo stosować filtry tylko dla wybranych okien <3

:smiley:

2 Likes

TIL o dwóch nowych dla mnie komendach w Arcaniście:

arc branch

pokazuje listę branchy w lokalnym repozytorium wraz z informajcą o tym, do których rewizji są podpięte i jaki jest ich status:

$ arc branch                                                                                                      
  arcpatch-D686   Needs Revision D686: Komponent preheader-cta na /developers
  arcpatch-D716   Needs Revision D716: Urensponsywnienie photo-in-logo
* master          No Revision    Add sales@ email to contact page
  public          No Revision    Add sales@ email to contact page
  arcpatch-D769   Needs Revision D769: napis menu pod hamburgerem

arc list

Jak to wpiszę to pokazuje mi wszystkie moje otwarte diffy w danym repozytorium:

$ arc list
 Needs Review   D744: Dodanie komponentu storyOfEvolver, podmiana responsive-image oraz dodanie class_attr
 Needs Revision D679: Add generating css to render site.

Wyobrażam sobie sytuację typu:

Odbierasz od użytkownika kilka informacji, które moga być przetworzone samodzielnie, ale na koniec i tak trzeba je zebrać do kupy. Wysyłasz każdą z tych informacji callem do API. Za API dzieją się rzeczy niekoniecznie dokładnie w tej kolejności, w jakiej je wysłałeś. Na koniec zbierasz te wszystkie wyniki z API i łączysz w jedną całość.

Oczywiście musiałbyś mieć konkretny przypadek biznesowy, żeby to miało więcej sensu niż wysyłanie wszystkiego łącznie i otrzymywanie też z backendu zbiorczej odpowiedzi :slight_smile:

Ofc - ale zastanawiam się w czym ta notacja ma przewagę nad zwykłym

for(element of promise_array){
   await element;
}

TIL o fajnym tricku z awk - można łatwo podzielić jeden plik po linijkach na wiele plików, zależnie od zawartości każdej z nich:

$ awk '{print > $2".txt"}' colours.txt

This produces files named yellow.txt , red.txt , and so on.

1 Like

TIL, że w reactowych projektach jest możliwość operowania globalnym stanem przy pomocy Hooków: use-global-hook. Na razie jestem maga zauroczony elegancją tego rozwiązania. :smiley:

2 Likes