Autoplay
Autocomplete
Previous Lesson
Complete and Continue
Mastering JavaScript High Performance - Interactive book
The Need for Speed
Overview
Download the Source files and say hello
Weren't websites always fast?
Getting Faster
Selecting an effective editor
Integrated Development Environments
Mid-range editors
Lightweight editors
Cloud-based editors
Summary
Increasing Code Performance with JSLint
Overview
Checking the JavaScript code performance
When to use console.time
What is JavaScript linting? (4:12)
About JSLint
Using JSLint
Reviewing errors
Configuring messy white space
Understanding the use strict statement
Using console in JSLint
Summary (4:35)
Test yourself
References and further Exploring
Understanding JavaScript Build Systems
Overview
What is a build system?
Compiling code by example
Error-checking in a JavaScript build system
Adding optimization beyond coding standards
Creating a build system from scratch using Gulp.js
Node.js
Testing a Node.js installation
About Node Package Manager
Installing jQuery with NPM
Setting up our build system
About Grunt.js and Gulp.js
Installing Gulp
Creating a gulpfile
Integrating JSLint into Gulp
Testing our example file
Creating a distribution
Summary (10:06)
Test yourself
Detecting Performance
Overview
The Safari Web Inspector
Firefox Developer tools
Internet Explorer developer tools
Chrome's Developer tools
Getting familiar with Chrome's Developer tools
The Elements panel
The Network panel
The Sources panel
Using the debugger keyword
The Timeline panel
The Profile panel
The Resources panel
The Audits panel
The Console panel
Summary
Operators, Loops, and Timers
Overview
Operators
Loops
The reverse loop performance myth
Timers
Summary
Test yourself
Constructors, Prototypes, and Arrays
Overview
Building with constructors and instance functions
Understanding instances
Alternate constructor functions using prototypes
Which is faster, a prototype or a constructor function?
Array performance
Summary
Searching Arrays (EXCLUSIVE BONUS). (5:56)
Hands off the DOM
Overview
Why worry about the DOM?
Don't we need an MV-whatever library?
Creating new objects using the createElement function
Animating elements
Understanding paint events
Pesky mouse scrolling events
Summary
Test yourself
Web Workers and Promises
Overview
Understanding the limitations first
Web workers
Testing workers with a local server
Promises
Testing a true asynchronous promise
Summary
Test yourself
Optimizing JavaScript for iOS Hybrid Apps
Overview
Getting ready for iOS development
iOS hybrid development
Setting up a simple iOS hybrid app
Using Safari Web Inspector for JavaScript performance
Comparing UIWebView with Mobile Safari
Common ways to improve hybrid performance
The WKWebView framework
Summary
Application Performance Testing
Overview
What is unit testing in JavaScript?
Installation and configuration
Reviewing the project code base
Reviewing an application's spec for writing tests
Writing tests using Jasmine
Fixing our code
Summary
What's next?
Teach online with
The reverse loop performance myth
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock