
JavaScript for Gurus
Description
Alles über E-Books | Antworten auf Fragen rund um E-Books, Kopierschutz und Dateiformate finden Sie in unserem Info- & Hilfebereich.
More details
Other editions
Additional editions

Content
- Cover Page
- Title Page
- Copyright Page
- Dedication
- About the Author
- Acknowledgements
- Preface
- Errata
- Table of Contents
- SECTION I: Introductory Concepts
- Introduction
- 1. Overview of the Power of JavaScript and Its Purpose
- Introduction
- Structure
- Objectives
- What is JavaScript?
- History of JavaScript
- Browser wars
- The start of JavaScript
- Why JavaScript?
- JavaScript features
- Conclusion
- Questions
- 2. JavaScript Objects
- Introduction
- Structure
- Objectives
- JavaScript objects
- Primitive values and primitive data types
- string
- number
- bigint
- boolean
- null
- undefined
- symbol
- The object data type
- Creating objects
- Object literal syntax
- Using 'new' with in-built object constructor functions
- Using 'new' with user defined constructor functions
- Object.create()
- Object.assign()
- ES6 classes
- The 'this' keyword
- Method
- Alone
- In a function
- In a function in strict mode
- In an event
- Conclusion
- Questions
- 3. JavaScript Statements
- Introduction
- Structure
- Objectives
- Anatomy of a statement
- JavaScript code blocks
- Grouping statements
- while loop
- for loop
- if statement
- Whitespace and line breaks
- Whitespace
- A while loop without whitespace
- A for loop without whitespace
- if without whitespace
- A while loop with whitespace
- A for loop with whitespace
- if with whitespace
- Line breaks
- A while loop with line breaks and whitespace
- A for loop with line breaks and whitespace
- if with whitespace and line breaks
- JavaScript keywords
- Conclusion
- Questions
- 4. JavaScript Operators
- Introduction
- Structure
- Objectives
- What are operators?
- Major operators
- Arithmetic operators
- Comparison operators
- Logical operators
- Assignment operators
- Operator sub-types
- Unary operators
- Binary operators
- Ternary operators
- Operator precedence
- That's not all
- Conclusion
- Questions
- 5. JavaScript Functions
- Introduction
- Structure
- Objectives
- Functions
- Function declaration
- Event-invoked function example
- Directly invoked function example
- Self-invoked function example
- Parameters
- Default values
- Function expressions
- Conclusion
- Questions
- SECTION II: The Power of JavaScript
- Introduction
- 6. JavaScript Classes
- Introduction
- Structure
- Objectives
- What are classes?
- Creating a class
- Class declarations
- Class expressions
- Properties
- Properties of properties
- Methods
- Static methods
- Inheritance
- Conclusion
- Questions
- 7. JavaScript Prototypes
- Introduction
- Structure
- Objectives
- What are prototypes?
- Adding properties to a prototype object
- Prototypal inheritance
- Mixins
- Conclusion
- Questions
- 8. JavaScript Properties
- Introduction
- Structure
- Objectives
- What are properties?
- Properties of properties
- Getters and setters
- Adding tricks to getters and setters
- Conclusion
- Questions
- 9. JavaScript Promises
- Introduction
- Structure
- Objectives
- JavaScript Promises description
- JavaScript promises
- Synchronous versus asynchronous methods
- Chaining Promises
- Callbacks and Promisification
- Callbacks
- Microtasks and macrotasks
- Promise methods
- Promise.all
- Promise.allSettled
- Promise.any
- Promise.race
- Conclusion
- Questions
- 10. JavaScript Generatorsand Iterators
- Introduction
- Structure
- Objectives
- What are JavaScript generators?
- Advantages of generators
- Lazy evaluation
- Memory efficiency
- Iterators
- Iterables
- Async iterators vs.async generators
- Async iterators
- Code segment 1: Regular iterator
- Code segment 2: Async iterator
- Async generators
- Code segment 3: Regular generator function
- Code sample 4: Async generator function
- Conclusion
- Questions
- 11. Modules
- Introduction
- Structure
- Objectives
- What are the modules?
- Modules
- Benefits of modules
- Working with modules
- Exporting modules
- Importing modules
- Cross-Origin Resource Sharing (CORS)
- CORS preflight request
- Moesif Origin & CORS Changer
- Command Prompt
- Out of blink CORS
- Dynamic import
- Nomodule
- Bundlers
- Quick notes on Bundlers
- Conclusion
- Questions
- SECTION III: Using JavaScript Productively
- Introduction
- 12. Variables
- Introduction
- Structure
- Objectives
- Declaring variables
- Variable scope
- Local Scope versus Global scope
- Primitive types
- String
- Quotes
- Backticks
- Special characters
- String properties
- String methods
- Number
- Number properties
- Number methods
- BigInt
- Null versus undefined
- Boolean
- Symbol
- Conclusion
- Questions
- 13. Control Flow Statements
- Introduction
- Structure
- Objectives
- Control-flow statements definition
- if statement
- else.if statement
- else statement
- switch statement
- Nested statements
- Conditional operator '?'
- Conclusion
- Questions
- 14. Loops
- Introduction
- Structure
- Objectives
- JavaScript loops
- for
- for...in
- for...of
- while
- do...while
- Exiting loops
- break
- break with label
- The continue statement
- Conclusion
- Questions
- 15. Code Quality
- Introduction
- Structure
- Objectives
- Debugging
- JavaScript debugging language features
- The console window
- console.log
- console.time and console.timeEnd keywords
- More console methods
- The debugger keyword
- try and catch blocks
- Coding style
- Variable and object names
- Operators and indentation
- Rules for objects
- Comments
- Single line comments
- Multi-line comment
- Conclusion
- Questions
- SECTION IV: Advanced Concepts
- Introduction
- 16. JavaScript Arrays
- Introduction
- Structure
- Objectives
- Arrays
- Creating arrays
- Method 1
- Method 2
- Adding items to an array
- Removing items from arrays
- Multidimensional arrays
- Conclusion
- Questions
- 17. Regular Expressions
- Introduction
- Structure
- Objectives
- Regular expression definition
- Using a regular expression literal
- Calling the constructor function of the RegExp object
- Regular expression modifiers/flags
- Regular expression patterns
- Conclusion
- Questions
- 18. Partials and Currying
- Introduction
- Structure
- Objectives
- Partials
- Currying
- Conclusion
- Questions
- SECTION V: JavaScript and Friends
- 19. JavaScript and Other Languages
- Introduction
- Structure
- Objectives
- Other languages
- jQuery and JavaScript
- JSON and JavaScript
- JavaScript objects
- The Object data type
- Creating JavaScript objects
- Object literal syntax
- The 'new' keyword
- Creating JSON objects
- Rules for valid JSON
- AJAX and JavaScript
- Languages based on or influenced by JavaScript
- ActionScript
- CoffeeScript
- TypeScript
- Conclusion
- Questions
System requirements
File format: ePUB
Copy protection: Adobe-DRM (Digital Rights Management)
System requirements:
- Computer (Windows; MacOS X; Linux): Install the free reader Adobe Digital Editions prior to download (see eBook Help).
- Tablet/smartphone (Android; iOS): Install the free app Adobe Digital Editions or the app PocketBook before downloading (see eBook Help).
- E-reader: Bookeen, Kobo, Pocketbook, Sony, Tolino and many more (not Kindle).
The file format ePub works well for novels and non-fiction books – i.e., „flowing” text without complex layout. On an e-reader or smartphone, line and page breaks automatically adjust to fit the small displays.
This eBook uses Adobe-DRM, a „hard” copy protection. If the necessary requirements are not met, unfortunately you will not be able to open the eBook. You will therefore need to prepare your reading hardware before downloading.
Please note: We strongly recommend that you authorise using your personal Adobe ID after installation of any reading software.
For more information, see our ebook Help page.