Efektywny JavaScript 68 sposobow wykorzystania potegi jezyka.pdf
(
752 KB
)
Pobierz
Tytuł oryginału: Effective JavaScript: 68 Specific Ways to Harness the Power of JavaScript
Tłumaczenie: Tomasz Walczak
ISBN: 978-83-283-1418-4
Authorized translation from the English language edition, entitled: EFFECTIVE JAVASCRIPT: 68
SPECIFIC WAYS TO HARNESS THE POWER OF JAVASCRIPT; ISBN 0321812182; by David Herman;
published by Pearson Education, Inc, publishing as Addison Wesley.
Copyright © 2013 by Pearson Education, Inc.
All rights reserved. No part of this book may by reproduced or transmitted in any form or by any means,
electronic or mechanical, including photocopying, recording or by any information storage retrieval system,
without permission from Pearson Education, Inc.
Polish language edition published by HELION S.A. Copyright © 2015.
Wszelkie prawa zastrzeżone. Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej
publikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie kopii metodą kserograficzną,
fotograficzną, a także kopiowanie książki na nośniku filmowym, magnetycznym lub innym powoduje
naruszenie praw autorskich niniejszej publikacji.
Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymi ich
właścicieli.
Autor oraz Wydawnictwo HELION dołożyli wszelkich starań, by zawarte w tej książce informacje były
kompletne i rzetelne. Nie biorą jednak żadnej odpowiedzialności ani za ich wykorzystanie, ani za związane
z tym ewentualne naruszenie praw patentowych lub autorskich. Autor oraz Wydawnictwo HELION nie
ponoszą również żadnej odpowiedzialności za ewentualne szkody wynikłe z wykorzystania informacji
zawartych w książce.
Wydawnictwo HELION
ul. Kościuszki 1c, 44-100 GLIWICE
tel. 32 231 22 19, 32 230 98 63
e-mail:
helion@helion.pl
WWW:
http://helion.pl
(księgarnia internetowa, katalog książek)
Pliki z przykładami omawianymi w książce można znaleźć pod adresem:
ftp://ftp.helion.pl/przyklady/efprjs.zip
Drogi Czytelniku!
Jeżeli chcesz ocenić tę książkę, zajrzyj pod adres
http://helion.pl/user/opinie/efprjs
Możesz tam wpisać swoje uwagi, spostrzeżenia, recenzję.
Printed in Poland.
•
Kup książkę
•
Poleć książkę
•
Oceń książkę
•
Księgarnia internetowa
•
Lubię to! » Nasza społeczność
Spis tre ci
Przedmowa .................................................................................... 11
Wprowadzenie ................................................................................ 13
Podzi kowania ............................................................................... 15
O autorze ....................................................................................... 17
Rozdzia 1. Przyzwyczajanie si do JavaScriptu ............................. 19
Sposób 1. Ustal, której wersji JavaScriptu u ywasz...................................... 19
Sposób 2. Liczby zmiennoprzecinkowe w JavaScripcie.................................. 24
Sposób 3. Uwa aj na niejawn konwersj typu............................................. 27
Sposób 4. Stosuj typy proste zamiast nak adek obiektowych ........................ 32
Sposób 5. Unikaj stosowania operatora == dla warto ci o ró nych typach .... 34
Sposób 6. Ograniczenia mechanizmu automatycznego
dodawania redników .................................................................. 37
Sposób 7. Traktuj a cuchy znaków jak sekwencje
16-bitowych jednostek kodowych................................................. 43
Rozdzia 2. Zasi g zmiennych ......................................................... 47
Sposób 8. Minimalizuj liczb obiektów globalnych ....................................... 47
Sposób 9. Zawsze deklaruj zmienne lokalne ................................................ 50
Sposób 10. Unikaj s owa kluczowego with.................................................... 51
Sposób 11. Poznaj domkni cia ..................................................................... 54
Sposób 12. Niejawne przenoszenie deklaracji zmiennych
na pocz tek bloku (czyli hoisting)............................................... 57
Sposób 13. Stosuj wyra enia IIFE do tworzenia zasi gu lokalnego ................ 59
Kup książkę
Poleć książkę
8
Spis tre ci
Sposób 14. Uwa aj na nieprzeno ne okre lanie zasi gu
nazwanych wyra e funkcyjnych............................................... 62
Sposób 15. Uwa aj na nieprzeno ne okre lanie zasi gu lokalnych
deklaracji funkcji w bloku ......................................................... 65
Sposób 16. Unikaj tworzenia zmiennych lokalnych
za pomoc funkcji eval .............................................................. 67
Sposób 17. Przedk adaj po rednie wywo ania eval
nad bezpo rednie wywo ania tej funkcji ..................................... 68
Rozdzia 3. Korzystanie z funkcji..................................................... 71
Sposób 18. Ró nice mi dzy wywo aniami funkcji, metod i konstruktorów..... 71
Sposób 19. Funkcje wy szego poziomu ........................................................ 74
Sposób 20. Stosuj instrukcj call do wywo ywania metod
dla niestandardowego odbiorcy .................................................. 77
Sposób 21. Stosuj instrukcj apply do wywo ywania funkcji
o ró nej liczbie argumentów....................................................... 79
Sposób 22. Stosuj s owo kluczowe arguments do tworzenia funkcji
wariadycznych........................................................................... 81
Sposób 23. Nigdy nie modyfikuj obiektu arguments ..................................... 82
Sposób 24. U ywaj zmiennych do zapisywania referencji
do obiektu arguments................................................................ 84
Sposób 25. U ywaj instrukcji bind do pobierania metod o sta ym odbiorcy... 85
Sposób 26. U ywaj metody bind do wi zania funkcji
z podzbiorem argumentów (technika currying) .............................. 87
Sposób 27. Wybieraj domkni cia zamiast a cuchów znaków
do hermetyzowania kodu ........................................................... 88
Sposób 28. Unikaj stosowania metody toString funkcji ................................ 90
Sposób 29. Unikaj niestandardowych w a ciwo ci przeznaczonych
do inspekcji stosu...................................................................... 92
Rozdzia 4. Obiekty i prototypy ....................................................... 95
Sposób 30. Ró nice mi dzy instrukcjami prototype,
getPrototypeOf i __proto__.......................................................... 95
Sposób 31. Stosuj instrukcj Object.getPrototypeOf zamiast __proto__ ......... 99
Sposób 32. Nigdy nie modyfikuj w a ciwo ci __proto__ ............................... 100
Sposób 33. Uniezale nianie konstruktorów od instrukcji new .................... 101
Sposób 34. Umieszczaj metody w prototypach............................................ 103
Sposób 35. Stosuj domkni cia do przechowywania prywatnych danych ..... 105
Sposób 36. Stan egzemplarzy przechowuj tylko w nich samych .................. 107
Sposób 37. Zwracaj uwag na niejawne wi zanie obiektu this .................... 109
Kup książkę
Poleć książkę
Spis tre ci
9
Sposób 38. Wywo ywanie konstruktorów klasy bazowej
w konstruktorach klas pochodnych ......................................... 111
Sposób 39. Nigdy nie wykorzystuj ponownie nazw w a ciwo ci
z klasy bazowej........................................................................ 115
Sposób 40. Unikaj dziedziczenia po klasach standardowych....................... 117
Sposób 41. Traktuj prototypy jak szczegó implementacji ........................... 119
Sposób 42. Unikaj nieprzemy lanego stosowania techniki
monkey patching ..................................................................... 120
Rozdzia 5. Tablice i s owniki .........................................................123
Sposób 43. Budowanie prostych s owników
na podstawie egzemplarzy typu Object..................................... 123
Sposób 44. Stosuj prototypy null, aby unikn za miecania
przez prototypy ........................................................................ 126
Sposób 45. U ywaj metody hasOwnProperty do zabezpieczania si
przed za miecaniem przez prototypy
Sposób 46. Stosuj tablice zamiast s owników
przy tworzeniu kolekcji uporz dkowanych ............................... 132
Sposób 47. Nigdy nie dodawaj enumerowanych w a ciwo ci
do prototypu Object.prototype ................................................. 134
Sposób 48. Unikaj modyfikowania obiektu w trakcie enumeracji ................ 136
Sposób 49. Stosuj p tl for zamiast p tli for…in
przy przechodzeniu po tablicy .................................................. 140
Sposób 50. Zamiast p tli stosuj metody do obs ugi iteracji ......................... 142
Sposób 51. Wykorzystaj uniwersalne metody klasy Array
w obiektach podobnych do tablic ............................................. 146
Sposób 52. Przedk adaj litera y tablicowe nad konstruktor klasy Array ...... 148
Rozdzia 6. Projekty bibliotek i interfejsów API ..............................151
Sposób 53. Przestrzegaj spójnych konwencji .............................................. 151
Sposób 54. Traktuj warto
undefined jak brak warto ci............................ 153
Sposób 55. Stosuj obiekty z opcjami do przekazywania argumentów
za pomoc s ów kluczowych..................................................... 157
Sposób 56. Unikaj niepotrzebnego przechowywania stanu ........................... 161
Sposób 57. Okre laj typy na podstawie struktury,
aby tworzy elastyczne interfejsy.............................................. 164
Sposób 58. Ró nice mi dzy tablicami a obiektami podobnymi do tablic ...... 167
Sposób 59. Unikaj nadmiernej koercji ........................................................ 171
Sposób 60. Obs uga a cuchów metod ....................................................... 174
Kup książkę
Poleć książkę
Plik z chomika:
PDFator
Inne pliki z tego folderu:
AngularJS Profesjonalne techniki.pdf
(1428 KB)
D3 js w akcji.pdf
(1246 KB)
AngularJS Szybkie wprowadzenie.pdf
(811 KB)
AJAX i JavaScript Tworzenie i optymalizacja aplikacji sieciowych.pdf
(547 KB)
Adobe AIR dla programistow JavaScript Leksykon kieszonkowy.pdf
(371 KB)
Inne foldery tego chomika:
3ds max
Access
Acrobat
After Effects
Agile - Programowanie
Zgłoś jeśli
naruszono regulamin