Go Pro!Bootcamp

Bootcamp

Study group

Collaborate with peers in your dedicated #study-group channel.

Code reviews

Submit projects for review using the /review command in your #code-reviews channel

Learn Basic JavaScript

Enroll for freeGet started!

Join 3176 other students

Log in to get

Access to all our free courses
Interactive hands-on content
100s of code challenges
Join a friendly community
Enroll for free
Subscribe to access!Subscribe to access!

Subscribe to access to this course and ALL other courses. You get a 30-day money-back guarantee, no questions asked.

Subscription includes

All courses and career paths
100s of coding challenges
Certificates of completion
Exclusive Pro members chat
The course creator freeCodeCamp

with freeCodeCamp

Course level: Beginner

This course features freeCodeCamp's popular JavaScript curriculum recorded as interactive Scrimba screencasts.

What's inside

This course contains 111 interactive scrims

two girls
Learn Basic JavaScript

111 lessons2 hours 34 min

1. Basic JavaScript Intro
1:15
2. Comment Your JavaScript Code
1:31
3. Frontend Career Path
1:58
4. Declare JavaScript Variables
3:16
5. Storing Values with the Assignment Operator
2:29
6. Initializing Variables with the Assignment Operator
0:23
7. Understanding Uninitialized Variables
0:39
8. Understanding Case Sensitivity in Variables
1:23
9. Add Two Numbers with JavaScript
0:25
10. Subtract One Number from Another with JavaScript
0:14
11. Multiply Two Numbers with JavaScript
0:17
12. Divide One Number by Another with JavaScript
0:16
13. Increment a Number with JavaScript
0:25
14. Decrement a Number with JavaScript
0:20
15. Create Decimal Numbers with JavaScript
0:23
16. Multiply Two Decimals with JavaScript
0:26
17. Divide One Decimal by Another with JavaScript
0:11
18. Finding a Remainder in JavaScript
0:48
19. Compound Assignment With Augmented Addition
0:57
20. Compound Assignment With Augmented Subtraction
0:53
21. Compound Assignment With Augmented Multiplication
0:30
22. Compound Assignment With Augmented Division
0:24
23. Declare String Variables
0:38
24. Escaping Literal Quotes in Strings
1:44
25. Quoting Strings with Single Quotes
1:31
26. Escape Sequences in Strings
1:24
27. Concatenating Strings with Plus Operator
1:00
28. Concatenating Strings with the Plus Equals Operator
1:09
29. Constructing Strings with Variables
1:10
30. Appending Variables to Strings
0:54
31. Find the Length of a String
0:47
32. Use Bracket Notation to Find the First Character in a String
1:23
33. Understand String Immutability
0:52
34. Use Bracket Notation to Find the Nth Character in a String
0:25
35. Use Bracket Notation to Find the Last Character in a String
0:54
36. Use Bracket Notation to Find the Nth-to-Last Character in a String
0:38
37. Word Blanks
4:13
38. Store Multiple Values in one Variable using JavaScript Arrays
0:55
39. Nest one Array within Another Array
0:48
40. Access Array Data with Indexes
0:58
41. Modify Array Data With Indexes
1:10
42. Access Multi-Dimensional Arrays With Indexes
1:39
43. Manipulate Arrays With push()
0:55
44. Manipulate Arrays With pop()
1:01
45. Manipulate Arrays With shift()
0:47
46. Manipulate Arrays With unshift()
1:11
47. Shopping List
1:01
48. Write Reusable JavaScript with Functions
2:03
49. Passing Values to Functions with Arguments
1:58
50. Global Scope and Functions
3:45
51. Local Scope and Functions
1:12
52. Global vs. Local Scope in Functions
1:51
53. Return a Value from a Function with Return
1:14
54. Understanding Undefined Value returned from a Function
0:53
55. Assignment with a Returned Value
0:57
56. Stand in Line
2:47
57. Understanding Boolean Values
0:40
58. Use Conditional Logic with If Statements
2:23
59. Comparison with the Equality Operator
1:24
60. Comparison with the Strict Equality Operator
1:22
61. Practice comparing different values
0:52
62. Comparison with the Inequality Operator
0:39
63. Comparison with the Strict Inequality Operator
0:42
64. Comparison with the Greater Than Operator
0:31
65. Comparison with the Greater Than Or Equal To Operator
0:27
66. Comparison with the Less Than Operator
0:31
67. Comparison with the Less Than Or Equal To Operator
0:30
68. Comparisons with the Logical And Operator
1:28
69. Comparisons with the Logical Or Operator
0:52
70. Introducing Else Statements
0:47
71. Introducing Else If Statements
0:58
72. Logical Order in If Else Statements
1:11
73. Chaining If Else Statements
2:56
74. Golf Code
4:26
75. Selecting from Many Options with Switch Statements
3:27
76. Adding a Default Option in Switch Statements
1:33
77. Multiple Identical Options in Switch Statements
1:53
78. Replacing If Else Chains with Switch
1:47
79. Returning Boolean Values from Functions
1:07
80. Return Early Pattern for Functions
1:13
81. Counting Cards
5:28
82. Build JavaScript Objects
1:31
83. Accessing Object Properties with Dot Notation
0:45
84. Accessing Object Properties with Bracket Notation
1:09
85. Accessing Object Properties with Variables
0:44
86. Updating Object Properties
0:52
87. Add New Properties to a JavaScript Object
0:46
88. Delete Properties from a JavaScript Object
0:29
89. Using Objects for Lookups
1:46
90. Testing Objects for Properties
1:28
91. Manipulating Complex Objects
1:40
92. Accessing Nested Objects
0:49
93. Accessing Nested Arrays
1:10
94. Record Collection
7:06
95. Iterate with JavaScript While Loops
1:15
96. Iterate with JavaScript For Loops
2:16
97. Iterate Odd Numbers With a For Loop
1:28
98. Count Backwards With a For Loop
1:38
99. Iterate Through an Array with a For Loop
2:30
100. Nesting For Loops
3:18
101. Nesting For Loops
2:57
102. Iterate with JavaScript Do...While Loops
1:23
103. Profile Lookup
4:03
104. Generate Random Fractions with JavaScript
0:32
105. Generate Random Whole Numbers with JavaScript
1:24
106. Generate Random Whole Numbers within a Range
1:21
107. Use the parseInt Function
0:46
108. Use the parseInt Function with a Radix
0:50
109. Use the Conditional (Ternary) Operator
1:24
110. Use Multiple Conditional (Ternary) Operators
1:57
111. Basic JavaScript Outro
0:26

Meet your teacher

The course creator

freeCodeCamp

freeCodeCamp is a community that helps you learn to code, then get experience by contributing to open source projects used by nonprofits. Their Scrimba sceencasts are recorded by their brilliant instructor Beau Carnes and are based on their core curriculum.

Follow me on twitter

Why this course rocks

This course features freeCodeCamp's basic JavaScript curriculum recorded as Scrimba screencasts. The curriculum has previously taught tens of thousands to write JavaScript, as freeCodeCamp's guide is one of the most popular JavaScript resources on the web. Needless to say, we're really glad to finally have it as an interactive Scrimba course. It's perfect as a first introduction to JavaScript, as it starts with the very basic concepts and increases in complexity as it progresses.

The course is also massive. It contains over 100 screencasts in total. However, most of them are very short. This helps you quickly feel that you're progressing, which is important in order to keep the motivation throughout the course.

About freeCodeCamp

The lectures are recorded by Beau Carnes. Beau is the man behind some of the most popular courses at freeCodeCamp's YouTube channel, so you'll be in good hands. He explains concepts clearly and thoroughly, but without wasting your time.

Good luck, and happy coding!

Join the Scrimba community chat

Learning alone can be lonely. Click here to join our Discord server and connect with other Scrimba learners!