
Explore the differences between statements and expressions and how functional programming improves JavaScript code. Learn about underscore.js utilities, object oriented patterns without traditional classes, and practical debugging tactics.
Explore the difference between statements and expressions in JavaScript, and learn how the ternary expression turns a conditional into a value that returns hello or nice to meet you.
Compare procedural versus functional programming by capitalizing a names array and joining the results. Create a pure capitalize-names function that uses input and returns output without side effects.
Explore how map abstracts a for loop to apply a function to every array item, transforming names into capitalized values and joining them into a single string.
Explore how to use the array filter method in JavaScript to return names longer than four characters from a names array, via a callback that returns true or false.
Explore underscore js to apply functional methods to arrays and objects, and use the pluck method to extract names or colors, reducing boilerplate code.
Adopt a three-phase debugging framework to streamline JavaScript problem solving. Identify where the problem is, determine what is wrong, and decide how to fix it for systematic error resolution.
Explore practical debugging strategies for JavaScript, from subdivision of code and sandboxing to console log and pattern recognition, to efficiently locate and fix errors in code.
Reproduce the error to locate its source, identify what went wrong, test assumptions with the console log, fix the first error, and mentally walk through code to verify behavior.
Use console log to inspect values and errors, with line numbers and stack traces. Pause execution with alert, preserve log upon navigation, and step through code using debugging tools.
Adopt pure functions and minimize global state in JavaScript to keep code easy to test and maintain; use unit testing and test-driven development to streamline debugging within a sandbox.
Explore object oriented programming as a mentality where objects have properties and methods, using a base vehicle template to create cars, trucks, and a bicycle with shared and specialized behavior.
Explore object oriented javascript by scaffolding a project, defining a vehicle constructor, creating car and motorcycle instances with new, and using a prototype honk method.
Define the browser's string conversion by implementing the toString method on a vehicle prototype to return a lowercase to capitalized string for console logs and output strings.
Learn inheritance in object oriented programming by extending a vehicle base class to create car and motorcycle subclasses, overriding methods, and adding car-specific behavior like a move method.
Complete this refactor module and continue learning through online courses that offer immersive experiences, deepen expertise, and invite you to our full stack javascript bootcamp at refactor.com.
In this course we'll examine advanced techniques in JavaScript. We’ll first look at the difference between statements and expressions and how functional programming can improve the way that we write code.
We’ll also look at Underscore, which is a library for providing utility, functional methods for us to use in our applications. We’ll also cover object-oriented programming in JavaScript. We’ll cover different ways to create classes and how to utilize them in our applications in JavaScript.
Finally, we’ll take a look at some of the different debugging techniques and tactics that we can use to help minimize the amount of time we spend debugging our applications. Let’s get started.
Course Includes:
What You'll Learn: