JavaScript. Przewodnik. Poznaj język mistrzów programowania

69.44

Opis

JavaScript jest wykorzystywanym w wielu celach uniwersalnym językiem ogólnego przeznaczenia – wysokopoziomowym, dynamicznym, przygotowanym do kodowania obiektowego i funkcjonalnego. Zasadniczo służy do programowania sieci WWW: kod JavaScript występuje w zdecydowanej większości stron internetowych. To jednak tylko jedno z możliwych zastosowań tego języka. Wszystko to sprawia, że JavaScript jest najbardziej rozpowszechnionym językiem w historii programowania. Pojawienie się platformy Node.js spowodowało, że stał się wszechstronniejszy, a jego popularność wśród programistów jeszcze wzrosła.To kolejne wydanie wyczerpującego, kompleksowego przewodnika po języku JavaScript oraz jego najważniejszych klienckich i serwerowych interfejsach API. Książka jest przeznaczona dla programistów, którzy chcą nauczyć się JavaScriptu lub udoskonalić swoje umiejętności tworzenia kodu. Ujęto w niej wersję ES2020 tego języka. Poza praktycznymi wyjaśnieniami dotyczącymi jego struktur i ich stosowania znalazły się tu liczne przykłady, wskazówki i porady. To wydanie zawiera nowe rozdziały poświęcone klasom, modułom, iteratorom, generatorom, promesom i instrukcjom async/await. W efekcie powstał całościowy obraz ekosystemu JavaScript wraz z opisem jego zawiłości, potencjalnych problemów i najlepszych metod radzenia sobie z nimi.W książce między innymi:podstawy języka i jego podstawowe elementystruktury danych, wyrażenia regularne, format JSONstandardowa biblioteka JavaScriptprzetwarzanie dokumentów i grafikiobsługa sieci, pamięci i wątkówśrodowisko Node oraz profesjonalne narzędzia i rozszerzenia językaDowiedz się wszystkiego, co musisz wiedzieć o JavaScripcie!Spis treści:Wstęp 131. Wprowadzenie do języka JavaScript 151.1. Poznawanie JavaScriptu 171.2. Witaj, świecie! 181.3. Wycieczka po języku JavaScript 181.4. Przykład: histogram częstości użycia znaków 241.5. Podsumowanie 262. Struktura leksykalna 272.1. Tekst programu 272.2. Komentarze 272.3. Literały 282.4. Identyfikatory i zarezerwowane słowa 282.5. Unicode 292.6. Opcjonalne średniki 302.7. Podsumowanie 323. Typy, wartości i zmienne 333.1. Informacje ogólne i definicje 333.2. Liczby 353.3. Tekst 413.4. Wartości logiczne 473.5. Wartości null i undefined 483.6. Symbole 493.7. Obiekt globalny 503.8. Niemutowalne prymitywne wartości i mutowalne odwołania do obiektu 513.9. Konwersje typów 523.10. Deklarowanie zmiennych i przypisywanie wartości 593.11. Podsumowanie 664. Wyrażenia i operatory 674.1. Wyrażenia podstawowe 674.2. Inicjatory obiektów i tablic 684.3. Wyrażenia definiujące funkcje 694.4. Wyrażenia dostępu do właściwości 694.5. Wyrażenia wywołujące 714.6. Wyrażenia tworzące obiekty 734.7. Przegląd operatorów 744.8. Operatory arytmetyczne 784.9. Wyrażenia relacyjne 834.10. Wyrażenia logiczne 884.11. Wyrażenia przypisujące 904.12. Wyrażenia interpretujące 924.13. Inne operatory 944.14. Podsumowanie 995. Instrukcje 1015.1. Instrukcje wyrażeniowe 1025.2. Instrukcje złożone i puste 1025.3. Instrukcje warunkowe 1035.4. Pętle 1085.5. Skoki 1145.6. Inne instrukcje 1215.7. Deklaracje 1245.8. Podsumowanie instrukcji 1266. Obiekty 1296.1. Wprowadzenie do obiektów 1296.2. Tworzenie obiektów 1306.3. Odpytywanie i ustawianie właściwości 1326.4. Usuwanie właściwości 1376.5. Sprawdzanie właściwości 1386.6. Wyliczanie właściwości 1396.7. Rozszerzanie obiektów 1406.8. Serializacja obiektów 1426.9. Metody obiektów 1426.10. Udoskonalona składnia literału obiektowego 1446.11. Podsumowanie 1507. Tablice 1517.1. Tworzenie tablic 1527.2. Odczytywanie i zapisywanie elementów tablicy 1547.3. Rozrzedzone tablice 1557.4. Długość tablicy 1567.5. Dodawanie i usuwanie elementów tablicy 1567.6. Iterowanie tablic 1577.7. Tablice wielowymiarowe 1597.8. Metody tablicowe 1597.9. Obiekty podobne do tablic 1707.10. Ciągi znaków jako tablice 1727.11. Podsumowanie 1728. Funkcje 1758.1. Definiowanie funkcji 1758.2. Wywoływanie funkcji 1798.3. Argumenty i parametry funkcji 1858.4. Funkcje jako wartości 1928.5. Funkcje jako przestrzenie nazw 1948.6. Domknięcia 1958.7. Właściwości, metody i konstruktory funkcji 1998.8. Programowanie funkcyjne 2038.9. Podsumowanie 2089. Klasy 2099.1. Klasy i prototypy 2109.2. Klasy i konstruktory 2119.3. Słowo kluczowe class 2159.4. Dodawanie metod do istniejących klas 2229.5. Podklasy 2229.6. Podsumowanie 23210. Moduły 23510.1. Tworzenie modułów za pomocą klas, obiektów i domknięć 23510.2. Moduły w środowisku Node 23810.3. Moduły w języku ES6 24010.4. Podsumowanie 24911. Standardowa biblioteka JavaScript 25111.1. Zbiory i mapy 25211.2. Typowane tablice i dane binarne 25711.3. Wyszukiwanie wzorców i wyrażenia regularne 26311.4. Daty i czas 28011.5. Klasy błędów 28411.6. Format JSON, serializacja i analiza składni 28511.7. Internacjonalizacja aplikacji 28811.8. Interfejs API konsoli 29411.9. Interfejs API klasy URL 29711.10. Czasomierze 30011.11. Podsumowanie 30112. Iteratory i generatory 30312.1. Jak działają iteratory? 30412.2. Implementowanie obiektów iterowalnych 30412.3. Generatory 30712.4. Zaawansowane funkcjonalności generatorów 31112.5. Podsumowanie 31413. Asynchroniczność w języku JavaScript 31513.1. Programowanie asynchroniczne i funkcje zwrotne 31513.2. Promesy 31913.3. Słowa kluczowe async i await 33813.4. Iteracje asynchroniczne 34113.5. Podsumowanie 34614. Metaprogramowanie 34914.1. Atrybuty właściwości 34914.2. Rozszerzalność obiektów 35314.3. Atrybut prototype 35414.4. Popularne symbole 35614.5. Znaczniki szablonowe 36314.6. Obiekt Reflect 36514.7. Klasa Proxy 36714.8. Podsumowanie 37315. JavaScript w przeglądarkach 37515.1. Podstawy programowania stron WWW 37715.2. Zdarzenia 39015.3. Przetwarzanie dokumentów 39915.4. Przetwarzanie arkusza stylów 41315.5. Geometria i przewijanie dokumentu 41915.6. Komponenty WWW 42315.7. SVG: skalowalna grafika wektorowa 43415.8. Grafika w znaczniku 44015.9. Klasa Audio 46015.10. Lokalizacja, nawigacja i historia 46215.11. Sieć 47015.12. Magazynowanie danych 48515.13. Wątki robocze i komunikaty 49615.14. Przykład: zbiór Mandelbrota 50315.15. Podsumowanie i dalsza lektura 51416. Serwery w środowisku Node 52116.1. Podstawy programowania w środowisku Node 52216.2. Domyślna asynchroniczność 52616.3. Bufory 52916.4. Zdarzenia i klasa EventEmitter 53116.5. Strumienie 53316.6. Procesy, procesory i szczegóły systemu operacyjnego 54316.7. Operacje na plikach 54416.8. Klienty i serwery HTTP 55416.9. Klienty i serwery inne niż HTTP 55816.10. Procesy potomne 56016.11. Wątki robocze 56516.12. Podsumowanie 57317. Narzędzia i rozszerzenia 57517.1. Inspekcja kodu za pomocą narzędzia ESLint 57517.2. Formatowanie kodu za pomocą narzędzia Prettier 57617.3. Tworzenie testów jednostkowych za pomocą narzędzia Jest 57717.4. Zarządzanie pakietami za pomocą narzędzia npm 58017.5. Pakowanie kodu 58117.6. Transpilacja kodu za pomocą narzędzia Babel 58317.7. Rozszerzenie JSX: znaczniki w kodzie JavaScript 58417.8. Sprawdzanie typów danych za pomocą rozszerzenia Flow 58817.9. Podsumowanie 602O autorze: David Flanagan — specjalista ds. programowania interfejsów użytkownika, autor książek poświęconych językowi Ruby oraz bibliotece jQuery.

Informatyka

ograniczenia ekonomiczno polityczne krzyżówka, e-toll gdzie obowiązuje mapa, dzień edukacji narodowej wikipedia, łódź fabryki, jak napisać wyjaśnienie różnic inwentaryzacyjnych, filip rudnicki, płyta ldf, najwyższa wieża w polsce, kiedy dostaje się zasiłek dla bezrobotnych, jak złożyć sprawozdanie finansowe za 2018, lot bagaż podręczny

yyyyy