The chapter overviews programming and the role of algorithms in finishing a coding task. It enlists famous programming languages and introduces JavaScript.
2.
Basics of JavaScript
9 Lessons
The chapter explains the basic structure of a JS program, covering basic constructs, e.g., printing on the console, data types, and the execution flow.
3.
Play with Variables
14 Lessons
The chapter focuses on essential JavaScript concepts like variables, expressions, type conversions, and user interactions, enhanced through practical coding challenges and solutions.
The chapter explores conditional logic in JavaScript, covering if/else statements, logical operators, and the switch statement.
5.
Repeat Statements
17 Lessons
The chapter explores loop structures in JavaScript, including while and for loops, their usage, and common mistakes.
6.
Write Functions
15 Lessons
The chapter explores functions in JS, covering definitions, parameters, return values, anonymous functions, and best coding practices.
Discovering FunctionsFunction ContentsAnonymous FunctionsGuidelines for Programming with FunctionsCoding Challenge: Improved HelloSolution: Improved HelloCoding Challenge: Number SquaringSolution: Number SquaringCoding Challenge: Minimum of Two NumbersSolution: Minimum of Two NumbersCoding Challenge: CalculatorSolution: CalculatorCoding Challenge: Circumference and Area of a CircleSolution: Circumference and Area of a CircleQuiz7.
Create your First Object
11 Lessons
The chapter describes OOP in JavaScript, guiding the creation of objects, how to add and call methods on objects, and the use of ‘this’ object.
JavaScript and ObjectsProgramming with ObjectsCoding Challenge: Adding a New Property to a CharacterSolution: Adding a New Property to a CharacterCoding Challenge: Modeling a DogSolution: Modeling a DogCoding Challenge: Modeling a CircleSolution: Modeling a CircleCoding Challenge: Modeling a Bank AccountSolution: Modeling a Bank AccountQuiz8.
Store Data in Arrays
15 Lessons
This chapter focuses on arrays in JavaScript, explaining their structure, manipulation techniques, and data retrieval techniques.
Introduction to ArraysManipulating Arrays in JavaScriptIterating over an ArrayUpdating an Array's ContentCoding Challenge: MusketeersSolution: MusketeersCoding Challenge: Sum of ValuesSolution: Sum of ValuesCoding Challenge: Array MaximumSolution: Array MaximumCoding Challenge: Array Second MinimumSolution: Second MinimumCoding Challenge: List of WordsSolution: List of WordsQuiz9.
Work with Strings
13 Lessons
The chapter focuses on strings in JavaScript, covering definitions, operations, indexing, slicing, and other manipulation techniques.
IntroductionStrings as Set of CharactersManipulating StringsSearching Inside a StringCoding Challenge: Word InformationSolution: Word InformationCoding Challenge: Vowel CountSolution: Vowel CountCoding Challenge: Reverse a WordSolution: Reverse a WordCoding Challenge: Palindrome FinderSolution: Palindrome FinderQuiz10.
Understand Object Oriented Programming
11 Lessons
The chapter explains OOP in detail, focusing on class structures and prototypes inspired by real-world instances.
Context: A Multiplayer RPGJavaScript ClassesUnder the Hood: Objects and PrototypesObject-OrientedCoding Challenge: Create a Dog ClassSolution: Create a Dog ClassCoding Challenge: Create a Character Inventory ClassSolution: Create a Character Inventory ClassCoding Challenge: Create an Account ClassSolution: Create an Account ClassQuiz11.
Discover Functional Programming
15 Lessons
The chapter explains program state and functional programming, covering pure functions, higher-order functions, and array methods that support this paradigm.
Context: A Movie ListProgram StatePure FunctionsArray OperationsHigher Order FunctionsJavaScript: A Multi Paradigm LanguageCoding Challenge: Older MoviesSolution: Older MoviesCoding Challenge: Government FormsSolution: Government FormsCoding Challenge: Arrays SumSolution: Arrays SumCoding Challenge: Students ResultsSolution: Students' ResultsQuiz12.
Project 1: A Social News Program
2 Lessons
The chapter details the functional requirements for creating a project on a social news program and implementing interactive user management features.
Functional & Technical RequirementsImplementing Social News Program13.
Create Interactive Web Pages
3 Lessons
The chapter introduces WWW and web pages, enlisting popular web languages used for user engagement and dynamic content presentation.
What's a Web Page?The Languages of the WebQuiz14.
Discover the DOM
5 Lessons
The chapter focuses on understanding the Document Object Model (DOM), its structure, and JavaScript interactions.
Introduction to the DOMGet Started with the DOM in JavaScriptCoding Challenge: Showing a Node's ChildSolution: Showing a Node's ChildQuiz15.
Traverse the DOM
11 Lessons
The chapter explains how to traverse DOM with JS and different techniques to select elements and properties to retrieve information.
Sample Web PageSelecting ElementsSelecting Elements via CSS SelectorsObtaining Information about ElementsCoding Challenge: Counting ElementsSolution: Counting ElementsCoding Challenge: Handling AttributesSolution: Handling AttributesCoding Challenge: Handling ClassesSolution: Handling ClassesQuiz16.
Modify Page Structure
17 Lessons
The chapter focuses on DOM manipulation techniques, covering element modification, addition, removal, styling, and manipulation drawbacks.
Modify an Existing ElementAdding a New ElementVariations on Adding elementsReplacing or Removing nodesStyling ElementsDOM Manipulations & PerformanceCoding Challenge: Adding a ParagraphSolution: Adding a ParagraphCoding Challenge: Newspaper ListSolution: Newspaper ListCoding Challenge: Mini-DictionarySolution: Mini-DictionaryCoding Challenge: Updating ColorsSolution: Updating ColorsCoding Challenge: Information about an ElementSolution: Information about an ElementQuiz17.
React to Events
15 Lessons
The chapter focuses on event-driven programming in JavaScript, covering event types, handling user interactions, and even propagation.
Introduction to EventsThe Event FamilyReacting to Keyboard EventsReacting to Mouse EventsReacting to Page EventsGo farther with EventsCoding Challenge #1: Counting ClicksSolution: Counting ClicksCoding Challenge: Changing ColorsSolution: Changing ColorsCoding Challenge: A Dessert ListSolution: A Dessert ListCoding Challenge: Interactive QuizSolution: Interactive QuizQuiz18.
Manipulate Forms
14 Lessons
The chapter focuses on enhancing form interactions in web development through JavaScript, covering user input management, validation, and dynamic elements.
JavaScript & FormsForm fields: Sign Up FormForm Fields: Text ZonesForm Fields: Choice ElementsForms as DOM ElementsForm ValidationRegular ExpressionsCoding Challenge: Password CheckerSolution: Password CheckerCoding Challenge: Character ListSolution: Character ListCoding Challenge: Auto CompleteSolution: Auto CompleteQuiz19.
Animate Elements
10 Lessons
The chapter explores various JavaScript techniques for animating elements, including timers, real-time movements, and CSS alternatives.
Repeat an Action at Regular IntervalsAnimate Page ElementsStart/Stop an AnimationAlternative: CSS AnimationsChoosing the Right Animation TechniqueCoding Challenge: ChronometerSolution: ChronometerCoding Challenge: Bouncing BallSolution: Bouncing BallQuiz20.
Project 2: A Social News Web Page
2 Lessons
The chapter focuses on building a social news webpage built on the previous project, setting its functional requirements, and implementing interactive features.
Functional & Technical RequirementsImplementing Social News Web Page21.
Building Web Applications
6 Lessons
The chapter covers core concepts of web architecture, e.g., HTTP protocols, requests, status codes, dynamic applications, and JSON data format.
How the Web Works?HTTP, the Web ProtocolHTTP Status Codes & URLFrom Web Sites to Web AppsJSON, a Data Format for the WebQuiz22.
Query a Web Server
7 Lessons
The chapter focuses on making asynchronous HTTP requests, handling JSON data, and integrating external data into web applications.
Creating Asynchronous HTTP Requests in JavaScriptHandling JSON DataCoding Challenge: Language ListSolution: Language ListCoding Challenge: Famous PaintingsSolution: Famous PaintingsQuizThe chapter introduces APIs explaining how to leverage web services in applications and covering open-source APIs and APIs requiring authentication.
Introducing Web APIsConsuming a Web APICalling an API with JavaScriptWeb APIs and AuthenticationKey-Based AuthenticationCoding Challenge: More Beer PleaseSolution: More Beer PleaseCoding Challenge: Star Wars UniverseSolution: Star Wars UniverseCoding Challenge: Github ProfileSolution: Github ProfileQuiz24.
Send Data to a Web Server
8 Lessons
The chapter emphasizes methods for sending data to web servers using POST requests, utilizing FormData and JSON for efficient data transmission.
Sending Data: The BasicsSending Form DataSending JSON DataCoding Challenge: New ArticleSolution: New ArticleCoding Challenge: Visited CountriesSolution: Visited CountriesQuiz25.
Discover Node.js
13 Lessons
The chapter introduces Node.js and how it enables efficient execution outside the browser, emphasizing modules, packages, and npm for effective development.
Introducing Node.jsNode.js ModulesExporting a Class or ObjectNode.js PackagesPackage Management with NPMRelationship between Packages and ModulesCoding Challenge: Circles AgainSolution: Circles AgainCoding Challenge: Accounting ModuleSolution: Accounting ModuleCoding Challenge: Playing with DatesSolution: Playing with DatesQuiz26.
Create a Web Server
9 Lessons
The chapter focuses on creating a web server using Node.js and Express, covering request handling, API creation, data management, and serving web pages.
Using a FrameworkResponding to RequestsCreating an APIExposing DataAccepting Data: Handling Form DataAccepting data: Handling JSON DataPublishing Web PagesPractice ExercisesQuiz27.
Project 3: A Social News Web App
2 Lessons
The chapter focuses on building a social news web app with Node.js, setting its functional and technical requirements for its development.
Functional and Technical RequirementsImplementing Social News Web AppThe chapter provides a quick rundown of the complete course and the road ahead.
Summary and PerspectivesThe chapter highlights best practices in JavaScript naming conventions and code formatting to enhance readability and maintainability.
Style Guide