Skip to content

JavaScript Practice Labs | This repo collects 498 of programming scenarios (labs and challenges) for JavaScript Practice Labs. This course contains lots of labs for JavaScript, each lab is a small JavaScript project with detailed guidance and solutions. You can practice your JavaScript skills by ...

Notifications You must be signed in to change notification settings

labex-labs/javascript-practice-labs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

11 Commits
Β 
Β 

Repository files navigation

JavaScript Practice Labs

JavaScript Practice Labs

Start-Learning

This course contains lots of labs for JavaScript, each lab is a small JavaScript project with detailed guidance and solutions. You can practice your JavaScript skills by completing these labs, improve your coding skills, and learn how to write clean and efficient code.

JavaScript

Environment

LabEx is an interactive, hands-on learning platform dedicated to coding and technology. It combines labs, AI assistance, and virtual machines to provide a no-video, practical learning experience.

  • A strict β€œLearn by Doing” approach with exclusive hands-on labs and no videos.
  • Interactive online environments within the browser, with automated step-by-step checks.
  • A structured content organization with the Skill Tree based learning system.
  • A growing learning resource of 30 Skill Trees and over 6,000 Labs.
  • The AI learning assistant Labby, built on ChatGPT, providing a conversational learning experience.

Learn more about LabEx VM.

Exercises

Index Name Difficulty Practice
001 πŸ“– JavaScript Variable Fundamentals β˜…β˜†β˜† Start Lab
002 πŸ“– Decode Base64 Encoded String β˜…β˜†β˜† Start Lab
003 πŸ“– Value Is Null β˜…β˜†β˜† Start Lab
004 πŸ“– Environment Is Travis CI β˜…β˜†β˜† Start Lab
005 πŸ“– Random Boolean Value β˜…β˜†β˜† Start Lab
006 πŸ“– JavaScript Fundamentals Lab β˜…β˜†β˜† Start Lab
007 πŸ“– Group Array Elements Based on Function β˜…β˜†β˜† Start Lab
008 πŸ“– Add Date by Days in JavaScript β˜…β˜†β˜† Start Lab
009 πŸ“– Add Minutes to Date β˜…β˜†β˜† Start Lab
010 πŸ“– Test if All Array Elements Are Falsy β˜…β˜†β˜† Start Lab
011 πŸ“– Test if All Array Elements Are Truthy β˜…β˜†β˜† Start Lab
012 πŸ“– JavaScript Logical AND Operator β˜…β˜†β˜† Start Lab
013 πŸ“– Test if Any Array Element Is Truthy β˜…β˜†β˜† Start Lab
014 πŸ“– Approximate Number Equality β˜…β˜†β˜† Start Lab
015 πŸ“– Arithmetic Progression in JavaScript β˜…β˜†β˜† Start Lab
016 πŸ“– Check if Array Has Duplicates β˜…β˜†β˜† Start Lab
017 πŸ“– Check if Array Includes All Values β˜…β˜†β˜† Start Lab
018 πŸ“– Check if Array Includes Any Values β˜…β˜†β˜† Start Lab
019 πŸ“– Random Element in Array β˜…β˜†β˜† Start Lab
020 πŸ“– JavaScript Fundamentals Through Coding β˜…β˜†β˜† Start Lab
021 πŸ“– Array Without Last Element β˜…β˜†β˜† Start Lab
022 πŸ“– Assert Object Keys Are Valid β˜…β˜†β˜† Start Lab
023 πŸ“– Calculating String Byte Size β˜…β˜†β˜† Start Lab
024 πŸ“– Fundamentals of JavaScript Programming β˜…β˜†β˜† Start Lab
025 πŸ“– Cast to Array β˜…β˜†β˜† Start Lab
026 πŸ“– Convert Temperature Units β˜…β˜†β˜† Start Lab
027 πŸ“– Clamping Numbers in JavaScript β˜…β˜†β˜† Start Lab
028 πŸ“– Compact Whitespaces in JavaScript Strings β˜…β˜†β˜† Start Lab
029 πŸ“– Apply Function When Condition Is Met β˜…β˜†β˜† Start Lab
030 πŸ“– Check if String Contains Whitespace β˜…β˜†β˜† Start Lab
031 πŸ“– Copy Sign to Number β˜…β˜†β˜† Start Lab
032 πŸ“– Calculate Date Difference in JavaScript β˜…β˜†β˜† Start Lab
033 πŸ“– Date Difference in Hours β˜…β˜†β˜† Start Lab
034 πŸ“– Date Difference in Minutes β˜…β˜†β˜† Start Lab
035 πŸ“– Date Difference in Months β˜…β˜†β˜† Start Lab
036 πŸ“– Date Difference in Seconds β˜…β˜†β˜† Start Lab
037 πŸ“– Date From Unix Timestamp β˜…β˜†β˜† Start Lab
038 πŸ“– Check if Date Is After Another Date β˜…β˜†β˜† Start Lab
039 πŸ“– Check if Date Is Before Another Date β˜…β˜†β˜† Start Lab
040 πŸ“– Check if Date Is Between Two Dates β˜…β˜†β˜† Start Lab
041 πŸ“– Date Is Same as Another Date β˜…β˜†β˜† Start Lab
042 πŸ“– Explore JavaScript Programming Concepts β˜…β˜†β˜† Start Lab
043 πŸ“– Date of Tomorrow β˜…β˜†β˜† Start Lab
044 πŸ“– Retrieve Weekday Name Using JavaScript β˜…β˜†β˜† Start Lab
045 πŸ“– Day of Year β˜…β˜†β˜† Start Lab
046 πŸ“– Number of Days in Month β˜…β˜†β˜† Start Lab
047 πŸ“– Angle Conversion to Radians β˜…β˜†β˜† Start Lab
048 πŸ“– Distance Between Two Points β˜…β˜†β˜† Start Lab
049 πŸ“– Quotient and Module of Division β˜…β˜†β˜† Start Lab
050 πŸ“– Drop Array Elements From the Left β˜…β˜†β˜† Start Lab
051 πŸ“– Drop Array Elements From the Right β˜…β˜†β˜† Start Lab
052 πŸ“– Encode String to Base64 β˜…β˜†β˜† Start Lab
053 πŸ“– JavaScript Regular Expressions β˜…β˜†β˜† Start Lab
054 πŸ“– Expand Tabs Into Spaces β˜…β˜†β˜† Start Lab
055 πŸ“– Fahrenheit to Celsius β˜…β˜†β˜† Start Lab
056 πŸ“– First N Elements β˜…β˜†β˜† Start Lab
057 πŸ“– Format Numbers Locally in JavaScript β˜…β˜†β˜† Start Lab
058 πŸ“– Get Base URL β˜…β˜†β˜† Start Lab
059 πŸ“– Get Colon Time From Date β˜…β˜†β˜† Start Lab
060 πŸ“– Hamming Distance Calculation in JavaScript β˜…β˜†β˜† Start Lab
061 πŸ“– Number Has Decimal Digits β˜…β˜†β˜† Start Lab
062 πŸ“– Exploring HSB to RGB Color Conversion β˜…β˜†β˜† Start Lab
063 πŸ“– JavaScript HSL to RGB Conversion β˜…β˜†β˜† Start Lab
064 πŸ“– Case-Insensitive Substring Search β˜…β˜†β˜† Start Lab
065 πŸ“– Indent String Formatting in JavaScript β˜…β˜†β˜† Start Lab
066 πŸ“– Initialize Array With Range β˜…β˜†β˜† Start Lab
067 πŸ“– Initialize Array With Values β˜…β˜†β˜† Start Lab
068 πŸ“– String Is Alpha β˜…β˜†β˜† Start Lab
069 πŸ“– String Is Alphanumeric β˜…β˜†β˜† Start Lab
070 πŸ“– String Is Anagram β˜…β˜†β˜† Start Lab
071 πŸ“– Value Is Boolean β˜…β˜†β˜† Start Lab
072 πŸ“– Divisibility Check in JavaScript β˜…β˜†β˜† Start Lab
073 πŸ“– Number Is Even β˜…β˜†β˜† Start Lab
074 πŸ“– Value Is Function β˜…β˜†β˜† Start Lab
075 πŸ“– String Is ISO Formatted Date β˜…β˜†β˜† Start Lab
076 πŸ“– Check for Leap Year β˜…β˜†β˜† Start Lab
077 πŸ“– String Is Lowercase β˜…β˜†β˜† Start Lab
078 πŸ“– Number Is Negative Zero β˜…β˜†β˜† Start Lab
079 πŸ“– Value Is Nil β˜…β˜†β˜† Start Lab
080 πŸ“– Environment Is Node.js β˜…β˜†β˜† Start Lab
081 πŸ“– Value Is Number β˜…β˜†β˜† Start Lab
082 πŸ“– Value Is Object-Like β˜…β˜†β˜† Start Lab
083 πŸ“– Number Is Odd β˜…β˜†β˜† Start Lab
084 πŸ“– Number Is Power of Ten β˜…β˜†β˜† Start Lab
085 πŸ“– Number Is Power of Two β˜…β˜†β˜† Start Lab
086 πŸ“– Number Is Primitive β˜…β˜†β˜† Start Lab
087 πŸ“– Value Is String β˜…β˜†β˜† Start Lab
088 πŸ“– Value Is Symbol β˜…β˜†β˜† Start Lab
089 πŸ“– Value Is Undefined β˜…β˜†β˜† Start Lab
090 πŸ“– JavaScript Converts Kilometers to Miles β˜…β˜†β˜† Start Lab
091 πŸ“– Last Array Element β˜…β˜†β˜† Start Lab
092 πŸ“– Last Date of Month β˜…β˜†β˜† Start Lab
093 πŸ“– Last N Elements β˜…β˜†β˜† Start Lab
094 πŸ“– Logarithm in Specific Base β˜…β˜†β˜† Start Lab
095 πŸ“– Calculating Midpoint Between Coordinates Using Jav... β˜…β˜†β˜† Start Lab
096 πŸ“– Convert Miles to Kilometers in JavaScript β˜…β˜†β˜† Start Lab
097 πŸ“– JavaScript Nor Operator β˜…β˜†β˜† Start Lab
098 πŸ“– Normalize Line Endings β˜…β˜†β˜† Start Lab
099 πŸ“– Exploring JavaScript Logical Not Operator β˜…β˜†β˜† Start Lab
100 πŸ“– JavaScript's nthElement Function β˜…β˜†β˜† Start Lab
101 πŸ“– NTH Root of Number β˜…β˜†β˜† Start Lab
102 πŸ“– Number to Currency String β˜…β˜†β˜† Start Lab
103 πŸ“– Number to Decimal Mark β˜…β˜†β˜† Start Lab
104 πŸ“– Exploring JavaScript Logical OR Operator β˜…β˜†β˜† Start Lab
105 πŸ“– Padding Strings in JavaScript β˜…β˜†β˜† Start Lab
106 πŸ“– Quarter of Year β˜…β˜†β˜† Start Lab
107 πŸ“– JavaScript Radians to Degrees Conversion β˜…β˜†β˜† Start Lab
108 πŸ“– Random Alphanumeric String β˜…β˜†β˜† Start Lab
109 πŸ“– Generate Gaussian Random Numbers β˜…β˜†β˜† Start Lab
110 πŸ“– Random Hex Color Code β˜…β˜†β˜† Start Lab
111 πŸ“– Random Integer in Range β˜…β˜†β˜† Start Lab
112 πŸ“– Random Number in Range β˜…β˜†β˜† Start Lab
113 πŸ“– Removing Accents in JavaScript Strings β˜…β˜†β˜† Start Lab
114 πŸ“– Remove Non ASCII Characters β˜…β˜†β˜† Start Lab
115 πŸ“– String Manipulation with JavaScript β˜…β˜†β˜† Start Lab
116 πŸ“– RGB to Hexadecimal Color Conversion in JavaScript β˜…β˜†β˜† Start Lab
117 πŸ“– JavaScript Basics Through Hands-on β˜…β˜†β˜† Start Lab
118 πŸ“– RGB to HSL Color Conversion β˜…β˜†β˜† Start Lab
119 πŸ“– Sort Array Alphabetically β˜…β˜†β˜† Start Lab
120 πŸ“– Split Into Chunks β˜…β˜†β˜† Start Lab
121 πŸ“– Split Strings Into Line Array β˜…β˜†β˜† Start Lab
122 πŸ“– Creating URL-Friendly Slugs with JavaScript β˜…β˜†β˜† Start Lab
123 πŸ“– Strip HTML Tags β˜…β˜†β˜† Start Lab
124 πŸ“– Sum of Numbers Until N β˜…β˜†β˜† Start Lab
125 πŸ“– Remove Array Elements β˜…β˜†β˜† Start Lab
126 πŸ“– Remove Array Elements From the End β˜…β˜†β˜† Start Lab
127 πŸ“– Value to Safe Integer β˜…β˜†β˜† Start Lab
128 πŸ“– Truncating Strings in JavaScript β˜…β˜†β˜† Start Lab
129 πŸ“– Unescape HTML Characters with JavaScript β˜…β˜†β˜† Start Lab
130 πŸ“– Unix Timestamp From Date β˜…β˜†β˜† Start Lab
131 πŸ“– Generating Unique Identifiers in JavaScript β˜…β˜†β˜† Start Lab
132 πŸ“– Generating UUID in Node.js β˜…β˜†β˜† Start Lab
133 πŸ“– Validating Numbers in JavaScript β˜…β˜†β˜† Start Lab
134 πŸ“– Week of Year β˜…β˜†β˜† Start Lab
135 πŸ“– Introductory Programming Lab β˜…β˜†β˜† Start Lab
136 πŸ“– Check Yes/No String β˜…β˜†β˜† Start Lab
137 πŸ“– JavaScript Operators Introduction β˜…β˜†β˜† Start Lab
138 πŸ“– Generate While Condition Is Met β˜…β˜†β˜† Start Lab
139 πŸ“– Date Is Weekday β˜…β˜†β˜† Start Lab
140 πŸ“– Date of Yesterday β˜…β˜†β˜† Start Lab
141 πŸ“– Calculating Days Ago with JavaScript β˜…β˜†β˜† Start Lab
142 πŸ“– Calculate Date n Days Ahead β˜…β˜†β˜† Start Lab
143 πŸ“– Checking Number Within Specified Range β˜…β˜†β˜† Start Lab
144 πŸ“– Truncate String at Whitespace β˜…β˜†β˜† Start Lab
145 πŸ“– Type of Value β˜…β˜†β˜† Start Lab
146 πŸ“– Initialize Array Until β˜…β˜†β˜† Start Lab
147 πŸ“– Initialize Array While β˜…β˜†β˜† Start Lab
148 πŸ“– Check if Array Elements Are Equal β˜…β˜†β˜† Start Lab
149 πŸ“– Head of Array β˜…β˜†β˜† Start Lab
150 πŸ“– Checking Array Equality with Mapping Function β˜…β˜†β˜† Start Lab
151 πŸ“– Matches Object Properties Based on Function β˜…β˜†β˜† Start Lab
152 πŸ“– Enhancing JavaScript Programming Skills β˜…β˜†β˜† Start Lab
153 πŸ“– Insertion Index in Sorted Array β˜…β˜†β˜† Start Lab
154 πŸ“– Last Insertion Index in Sorted Array β˜…β˜†β˜† Start Lab
155 πŸ“– Number to Ordinal Suffix β˜…β˜†β˜† Start Lab
156 πŸ“– Truth Check Collection β˜…β˜†β˜† Start Lab
157 πŸ“– Check if All Array Elements Are Unique β˜…β˜†β˜† Start Lab
158 πŸ“– Find Last Matching Value β˜…β˜†β˜† Start Lab
159 πŸ“– Stream Is Duplex β˜…β˜†β˜† Start Lab
160 πŸ“– Stream Is Readable β˜…β˜†β˜† Start Lab
161 πŸ“– Value Is Stream β˜…β˜†β˜† Start Lab
162 πŸ“– Stream Is Writable β˜…β˜†β˜† Start Lab
163 πŸ“– Check if Value Is of Type β˜…β˜†β˜† Start Lab
164 πŸ“– Bifurcate Array Based on Function β˜…β˜†β˜† Start Lab
165 πŸ“– JavaScript Programming Fundamentals β˜…β˜†β˜† Start Lab
166 πŸ“– Count Substrings of String β˜…β˜†β˜† Start Lab
167 πŸ“– String Ends With Substring β˜…β˜†β˜† Start Lab
168 πŸ“– Checking Prime Numbers in JavaScript β˜…β˜†β˜† Start Lab
169 πŸ“– Match Object Properties β˜…β˜†β˜† Start Lab
170 πŸ“– Prime Factors of Number β˜…β˜†β˜† Start Lab
171 πŸ“– JavaScript Hands-On Exercises β˜…β˜†β˜† Start Lab
172 πŸ“– Resolve Promise After Given Amount of Time β˜…β˜†β˜† Start Lab
173 πŸ“– String Starts With Substring β˜…β˜†β˜† Start Lab
174 πŸ“– Remove Array Elements Until Condition Is Met β˜…β˜†β˜† Start Lab
175 πŸ“– Remove Array Elements While Condition Is Met β˜…β˜†β˜† Start Lab
176 πŸ“– Closest Numeric Match β˜…β˜†β˜† Start Lab
177 πŸ“– Factorial of Number β˜…β˜†β˜† Start Lab
178 πŸ“– Get Meridiem Suffix of Integer β˜…β˜†β˜† Start Lab
179 πŸ“– Unique Array Difference Calculation β˜…β˜†β˜† Start Lab
180 πŸ“– Check if Array Has Many Matches β˜…β˜†β˜† Start Lab
181 πŸ“– Check if Array Has Only One Match β˜…β˜†β˜† Start Lab
182 πŸ“– Array Ranking in JavaScript β˜…β˜†β˜† Start Lab
183 πŸ“– Array Similarity Algorithm Exploration β˜…β˜†β˜† Start Lab
184 πŸ“– Convert Array to Identity Object β˜…β˜†β˜† Start Lab
185 πŸ“– Arrays of Consecutive Elements β˜…β˜†β˜† Start Lab
186 πŸ“– Binary Function Arity β˜…β˜†β˜† Start Lab
187 πŸ“– Filtering Falsy Values in JavaScript Arrays β˜…β˜†β˜† Start Lab
188 πŸ“– Compact and Join Array β˜…β˜†β˜† Start Lab
189 πŸ“– Consecutive Element Subarrays β˜…β˜†β˜† Start Lab
190 πŸ“– Fundamental JavaScript Programming Concepts β˜…β˜†β˜† Start Lab
191 πŸ“– Cross Product of Arrays β˜…β˜†β˜† Start Lab
192 πŸ“– CSV to Array β˜…β˜†β˜† Start Lab
193 πŸ“– Deep Freeze Object β˜…β˜†β˜† Start Lab
194 πŸ“– Every NTH Element β˜…β˜†β˜† Start Lab
195 πŸ“– Extend Hex Value β˜…β˜†β˜† Start Lab
196 πŸ“– Find Last Matching Index β˜…β˜†β˜† Start Lab
197 πŸ“– Flattening Arrays with JavaScript Recursion β˜…β˜†β˜† Start Lab
198 πŸ“– Array Difference Based on Function β˜…β˜†β˜† Start Lab
199 πŸ“– Index Array Based on Function β˜…β˜†β˜† Start Lab
200 πŸ“– Array Intersection Based on Function β˜…β˜†β˜† Start Lab
201 πŸ“– URL Parameters as Object β˜…β˜†β˜† Start Lab
202 πŸ“– Hash String Into Number β˜…β˜†β˜† Start Lab
203 πŸ“– Initialize Array With Reversed Range β˜…β˜†β˜† Start Lab
204 πŸ“– Join Array Into String β˜…β˜†β˜† Start Lab
205 πŸ“– Map Consecutive Elements β˜…β˜†β˜† Start Lab
206 πŸ“– Mapping String Characters in JavaScript β˜…β˜†β˜† Start Lab
207 πŸ“– Merge Sort in JavaScript β˜…β˜†β˜† Start Lab
208 πŸ“– Percentile of Matches β˜…β˜†β˜† Start Lab
209 πŸ“– Generating Powerset with JavaScript β˜…β˜†β˜† Start Lab
210 πŸ“– Pretty-Print Number of Bytes β˜…β˜†β˜† Start Lab
211 πŸ“– Primes Up to Given Number β˜…β˜†β˜† Start Lab
212 πŸ“– Remove Matching Elements From Array β˜…β˜†β˜† Start Lab
213 πŸ“– Stable Sorting with JavaScript Arrays β˜…β˜†β˜† Start Lab
214 πŸ“– Calculating Standard Deviation in JavaScript β˜…β˜†β˜† Start Lab
215 πŸ“– Convert String to Array β˜…β˜†β˜† Start Lab
216 πŸ“– Array of Successive Values β˜…β˜†β˜† Start Lab
217 πŸ“– Sum of Powers in Range β˜…β˜†β˜† Start Lab
218 πŸ“– Convert Strings to Camelcase with JavaScript β˜…β˜†β˜† Start Lab
219 πŸ“– HSL to Array β˜…β˜†β˜† Start Lab
220 πŸ“– Convert String to Kebab Case with JavaScript β˜…β˜†β˜† Start Lab
221 πŸ“– Convert String to Pascal Case β˜…β˜†β˜† Start Lab
222 πŸ“– RGB to Array β˜…β˜†β˜† Start Lab
223 πŸ“– Integer to Roman Numeral Conversion β˜…β˜†β˜† Start Lab
224 πŸ“– Title Case String Manipulation β˜…β˜†β˜† Start Lab
225 πŸ“– Unary Function Arity β˜…β˜†β˜† Start Lab
226 πŸ“– Reverse Unique Array Elements Using JavaScript β˜…β˜†β˜† Start Lab
227 πŸ“– Efficiently Check Empty JavaScript Collections β˜…β˜†β˜† Start Lab
228 πŸ“– Convert Object to Map β˜…β˜†β˜† Start Lab
229 πŸ“– Exploring JavaScript's dropWhile Function β˜…β˜†β˜† Start Lab
230 πŸ“– Manipulating Arrays with dropRightWhile β˜…β˜†β˜† Start Lab
231 πŸ“– JavaScript Fundamentals Hands-on β˜…β˜†β˜† Start Lab
232 πŸ“– Value Is Object β˜…β˜†β˜† Start Lab
233 πŸ“– Convert Object to Pairs β˜…β˜†β˜† Start Lab
234 πŸ“– Random Integer Array in Range β˜…β˜†β˜† Start Lab
235 πŸ“– Shallow Clone Object β˜…β˜†β˜† Start Lab
236 πŸ“– Size of Array, Object or String β˜…β˜†β˜† Start Lab
237 πŸ“– Split Array Into N Chunks β˜…β˜†β˜† Start Lab
238 πŸ“– Convert Object to Iterable Pairs β˜…β˜†β˜† Start Lab
239 πŸ“– Unfold Function in JavaScript β˜…β˜†β˜† Start Lab
240 πŸ“– Argument Coalescing in JavaScript β˜…β˜†β˜† Start Lab
241 πŸ“– Argument Coalescing Factory β˜…β˜†β˜† Start Lab
242 πŸ“– Check if Two Arrays Intersect β˜…β˜†β˜† Start Lab
243 πŸ“– Logical and for Functions β˜…β˜†β˜† Start Lab
244 πŸ“– Call or Return β˜…β˜†β˜† Start Lab
245 πŸ“– Capitalize First Letter in JavaScript β˜…β˜†β˜† Start Lab
246 πŸ“– Convert Function From Variadic β˜…β˜†β˜† Start Lab
247 πŸ“– JavaScript Currying Techniques β˜…β˜†β˜† Start Lab
248 πŸ“– Decapitalize First Letter in JavaScript β˜…β˜†β˜† Start Lab
249 πŸ“– Disjointed Iterables in JavaScript β˜…β˜†β˜† Start Lab
250 πŸ“– Logical or for Functions β˜…β˜†β˜† Start Lab
251 πŸ“– Generator to Array β˜…β˜†β˜† Start Lab
252 πŸ“– Insert Value at Array Index β˜…β˜†β˜† Start Lab
253 πŸ“– Check if Date Is Valid β˜…β˜†β˜† Start Lab
254 πŸ“– Join URL Segments β˜…β˜†β˜† Start Lab
255 πŸ“– Exploring Logical Complement in JavaScript β˜…β˜†β˜† Start Lab
256 πŸ“– JavaScript Programming Techniques β˜…β˜†β˜† Start Lab
257 πŸ“– Exploring JavaScript Programming Concepts β˜…β˜†β˜† Start Lab
258 πŸ“– Retrieve Maximum Elements from Array β˜…β˜†β˜† Start Lab
259 πŸ“– N Min Elements β˜…β˜†β˜† Start Lab
260 πŸ“– Offset Array Elements β˜…β˜†β˜† Start Lab
261 πŸ“– Check if Process Arguments Contain Flags β˜…β˜†β˜† Start Lab
262 πŸ“– Reverse String with JavaScript β˜…β˜†β˜† Start Lab
263 πŸ“– Sort Characters in String β˜…β˜†β˜† Start Lab
264 πŸ“– Subset of Iterable β˜…β˜†β˜† Start Lab
265 πŸ“– Superset of Iterable β˜…β˜†β˜† Start Lab
266 πŸ“– String to Character Array β˜…β˜†β˜† Start Lab
267 πŸ“– Unique Values in Array β˜…β˜†β˜† Start Lab
268 πŸ“– Convert to Absolute Path β˜…β˜†β˜† Start Lab
269 πŸ“– Date to ISO Format With Timezone β˜…β˜†β˜† Start Lab
270 πŸ“– Mask a Value β˜…β˜†β˜† Start Lab
271 πŸ“– Number to Fixed-Point Notation Without Trailing Ze... β˜…β˜†β˜† Start Lab
272 πŸ“– Padding Numbers with JavaScript β˜…β˜†β˜† Start Lab
273 πŸ“– Reversing Numbers in JavaScript β˜…β˜†β˜† Start Lab
274 πŸ“– Serializing Cookies in JavaScript β˜…β˜†β˜† Start Lab
275 πŸ“– Word Wrap String β˜…β˜†β˜† Start Lab
276 πŸ“– Validate Object Properties with Curried Functions β˜…β˜†β˜† Start Lab
277 πŸ“– Exploring JavaScript Generators: Cyclic Array Iter... β˜…β˜†β˜† Start Lab
278 πŸ“– Count Weekdays Between Two Dates β˜…β˜†β˜† Start Lab
279 πŸ“– Converting Strings to Snake Case with JavaScript β˜…β˜†β˜† Start Lab
280 πŸ“– Array Is Sorted β˜…β˜†β˜† Start Lab
281 πŸ“– Binary Search in JavaScript β˜…β˜†β˜† Start Lab
282 πŸ“– Implementing Linear Search in JavaScript β˜…β˜†β˜† Start Lab
283 πŸ“– Fundamental JavaScript Programming Exercises β˜…β˜†β˜† Start Lab
284 πŸ“– Reverse Iteration with forEachRight β˜…β˜†β˜† Start Lab
285 πŸ“– String Is Uppercase β˜…β˜†β˜† Start Lab
286 πŸ“– Implement Luhn Algorithm in JavaScript β˜…β˜†β˜† Start Lab
287 πŸ“– Pluralizing Strings in JavaScript β˜…β˜†β˜† Start Lab
288 πŸ“– Replace Last Occurrence in String β˜…β˜†β˜† Start Lab
289 πŸ“– Time Taken by Function β˜…β˜†β˜† Start Lab
290 πŸ“– Bifurcate Array Based on Values β˜…β˜†β˜† Start Lab
291 πŸ“– CSV to JSON β˜…β˜†β˜† Start Lab
292 πŸ“– Date Range Generator β˜…β˜†β˜† Start Lab
293 πŸ“– Nested JSON Object Value Retrieval β˜…β˜†β˜† Start Lab
294 πŸ“– Deep Map Object Keys β˜…β˜†β˜† Start Lab
295 πŸ“– Filter Matching and Unspecified Values β˜…β˜†β˜† Start Lab
296 πŸ“– Find Matching Keys β˜…β˜†β˜† Start Lab
297 πŸ“– Array Element Grouping With Functions β˜…β˜†β˜† Start Lab
298 πŸ“– Generate Until Condition Is Met β˜…β˜†β˜† Start Lab
299 πŸ“– Value Is Array-Like β˜…β˜†β˜† Start Lab
300 πŸ“– Most Frequent Element in Array β˜…β˜†β˜† Start Lab
301 πŸ“– Parsing HTTP Cookies in JavaScript β˜…β˜†β˜† Start Lab
302 πŸ“– Transposing Two-Dimensional Arrays in JavaScript β˜…β˜†β˜† Start Lab
303 πŸ“– Vector Angle Calculation in JavaScript β˜…β˜†β˜† Start Lab
304 πŸ“– Calculating Euclidean Vector Distance in JavaScrip... β˜…β˜†β˜† Start Lab
305 πŸ“– Calculating Weighted Averages in JavaScript β˜…β˜†β˜† Start Lab
306 πŸ“– Flip Function Arguments β˜…β˜†β˜† Start Lab
307 πŸ“– Unique Array Elements Identification β˜…β˜†β˜† Start Lab
308 πŸ“– Filter Non-Unique Array Values Based on Function β˜…β˜†β˜† Start Lab
309 πŸ“– Filter Unique Array Values Based on Function β˜…β˜†β˜† Start Lab
310 πŸ“– Pull Matching Values From Array β˜…β˜†β˜† Start Lab
311 πŸ“– Pull Values From Array at Index β˜…β˜†β˜† Start Lab
312 πŸ“– Append Function Arguments β˜…β˜†β˜† Start Lab
313 πŸ“– Find First Matching Key β˜…β˜†β˜† Start Lab
314 πŸ“– Find Last Matching Key β˜…β˜†β˜† Start Lab
315 πŸ“– Flattening Nested Data Structures with JavaScript ... β˜…β˜†β˜† Start Lab
316 πŸ“– Check if Object Is Deep Frozen β˜…β˜†β˜† Start Lab
317 πŸ“– Left Substring Generator β˜…β˜†β˜† Start Lab
318 πŸ“– Prepend Function Arguments β˜…β˜†β˜† Start Lab
319 πŸ“– Right Substring Generator β˜…β˜†β˜† Start Lab
320 πŸ“– JavaScript Conditional Statements Introduction β˜…β˜†β˜† Start Lab
321 πŸ“– Array Is Contained in Other Array β˜…β˜†β˜† Start Lab
322 πŸ“– Check if Absolute URL β˜…β˜†β˜† Start Lab
323 πŸ“– Value Is Plain Object β˜…β˜†β˜† Start Lab
324 πŸ“– JavaScript Programming Concepts β˜…β˜†β˜† Start Lab
325 πŸ“– Run Promises in Series β˜…β˜†β˜† Start Lab
326 πŸ“– Record Animation Frames β˜…β˜†β˜† Start Lab
327 πŸ“– Recursive Falsy Value Removal in JavaScript β˜…β˜†β˜† Start Lab
328 πŸ“– Get Nested Value in Object β˜…β˜†β˜† Start Lab
329 πŸ“– Index of Substrings β˜…β˜†β˜† Start Lab
330 πŸ“– Implementing Insertion Sort in JavaScript β˜…β˜†β˜† Start Lab
331 πŸ“– Exploring JavaScript's takeRightUntil Function β˜…β˜†β˜† Start Lab
332 πŸ“– Removing Array Elements Using Callback β˜…β˜†β˜† Start Lab
333 πŸ“– Unique Values in Array Based on Function β˜…β˜†β˜† Start Lab
334 πŸ“– Iterate N Times β˜…β˜†β˜† Start Lab
335 πŸ“– Generating Range Values with JavaScript Generators β˜…β˜†β˜† Start Lab
336 πŸ“– Finding Common Object Keys in JavaScript β˜…β˜†β˜† Start Lab
337 πŸ“– Convert Map to Object β˜…β˜†β˜† Start Lab
338 πŸ“– Generating Fibonacci Sequence with JavaScript β˜…β˜†β˜† Start Lab
339 πŸ“– Minimum and Maximum Array Values β˜…β˜†β˜† Start Lab
340 πŸ“– Get Function Name β˜…β˜†β˜† Start Lab
341 πŸ“– Hertz Frequency of Function β˜…β˜†β˜† Start Lab
342 πŸ“– Initialize 2D Array β˜…β˜†β˜† Start Lab
343 πŸ“– Mapped Array Difference β˜…β˜†β˜† Start Lab
344 πŸ“– Check if Object Has Key β˜…β˜†β˜† Start Lab
345 πŸ“– Map an Array to an Object β˜…β˜†β˜† Start Lab
346 πŸ“– Partition Array in Two β˜…β˜†β˜† Start Lab
347 πŸ“– HSL to Object β˜…β˜†β˜† Start Lab
348 πŸ“– RGB to Object β˜…β˜†β˜† Start Lab
349 πŸ“– Efficient Array Intersection in JavaScript β˜…β˜†β˜† Start Lab
350 πŸ“– Array Symmetric Difference β˜…β˜†β˜† Start Lab
351 πŸ“– Array Unique Symmetric Difference β˜…β˜†β˜† Start Lab
352 πŸ“– Average of Numbers β˜…β˜†β˜† Start Lab
353 πŸ“– Implementing Bucket Sort in JavaScript β˜…β˜†β˜† Start Lab
354 πŸ“– Calculating Cartesian Product with JavaScript β˜…β˜†β˜† Start Lab
355 πŸ“– Function Composition in JavaScript β˜…β˜†β˜† Start Lab
356 πŸ“– Converge Branching Functions β˜…β˜†β˜† Start Lab
357 πŸ“– Deep Flatten Array β˜…β˜†β˜† Start Lab
358 πŸ“– Filter Non-Unique Array Values β˜…β˜†β˜† Start Lab
359 πŸ“– Filter Out Matching Array Elements β˜…β˜†β˜† Start Lab
360 πŸ“– Filter Unique Array Values β˜…β˜†β˜† Start Lab
361 πŸ“– Find First N Matches β˜…β˜†β˜† Start Lab
362 πŸ“– Find Last N Matches β˜…β˜†β˜† Start Lab
363 πŸ“– Limiting Function Arguments in JavaScript β˜…β˜†β˜† Start Lab
364 πŸ“– Array Symmetric Difference Based on Function β˜…β˜†β˜† Start Lab
365 πŸ“– Array Union Based on Function β˜…β˜†β˜† Start Lab
366 πŸ“– Recursive Greatest Common Divisor β˜…β˜†β˜† Start Lab
367 πŸ“– Index of All Matches β˜…β˜†β˜† Start Lab
368 πŸ“– Invoke Functions on Arguments β˜…β˜†β˜† Start Lab
369 πŸ“– Value Is Promise-Like β˜…β˜†β˜† Start Lab
370 πŸ“– Juxtapose Functions in JavaScript β˜…β˜†β˜† Start Lab
371 πŸ“– Calculate Least Common Multiple Using JavaScript β˜…β˜†β˜† Start Lab
372 πŸ“– Longest Item in Array β˜…β˜†β˜† Start Lab
373 πŸ“– Mapped Array Intersection β˜…β˜†β˜† Start Lab
374 πŸ“– Negating Predicate Functions in JavaScript β˜…β˜†β˜† Start Lab
375 πŸ“– Composing Functions Efficiently in JavaScript β˜…β˜†β˜† Start Lab
376 πŸ“– Product of Numeric Values β˜…β˜†β˜† Start Lab
377 πŸ“– Reject Non-Matching Values β˜…β˜†β˜† Start Lab
378 πŸ“– Composing Functions Left to Right β˜…β˜†β˜† Start Lab
379 πŸ“– Array Reduction in JavaScript β˜…β˜†β˜† Start Lab
380 πŸ“– Swap String Case with JavaScript β˜…β˜†β˜† Start Lab
381 πŸ“– Toggle Element in Array β˜…β˜†β˜† Start Lab
382 πŸ“– Weighted Random Sampling in JavaScript β˜…β˜†β˜† Start Lab
383 πŸ“– Array to CSV β˜…β˜†β˜† Start Lab
384 πŸ“– Change Color Lightness β˜…β˜†β˜† Start Lab
385 πŸ“– Convert Number to Digit Array β˜…β˜†β˜† Start Lab
386 πŸ“– Number of Seconds to ISO Format β˜…β˜†β˜† Start Lab
387 πŸ“– Initialize Mapped Array β˜…β˜†β˜† Start Lab
388 πŸ“– Assign Default Values for Object Properties β˜…β˜†β˜† Start Lab
389 πŸ“– N Random Elements in Array β˜…β˜†β˜† Start Lab
390 πŸ“– Shuffling Arrays with Fisher-Yates Algorithm β˜…β˜†β˜† Start Lab
391 πŸ“– Chain Async Functions β˜…β˜†β˜† Start Lab
392 πŸ“– Pipe Async Functions β˜…β˜†β˜† Start Lab
393 πŸ“– Add Weekdays to Date β˜…β˜†β˜† Start Lab
394 πŸ“– Partitioning Arrays with JavaScript Reduce β˜…β˜†β˜† Start Lab
395 πŸ“– Implementing Caesar Cipher in JavaScript β˜…β˜†β˜† Start Lab
396 πŸ“– Value Is Generator Function β˜…β˜†β˜† Start Lab
397 πŸ“– Bubble Sort Algorithm in JavaScript β˜…β˜†β˜† Start Lab
398 πŸ“– Implementing Heapsort Algorithm in JavaScript β˜…β˜†β˜† Start Lab
399 πŸ“– Most Performant Function β˜…β˜†β˜† Start Lab
400 πŸ“– Walk Through Object β˜…β˜†β˜† Start Lab
401 πŸ“– Chunking Iterables into Smaller Arrays β˜…β˜†β˜† Start Lab
402 πŸ“– Check if Object Has Value β˜…β˜†β˜† Start Lab
403 πŸ“– Recursive String Permutations in JavaScript β˜…β˜†β˜† Start Lab
404 πŸ“– Beginner's Guide to JavaScript Fundamentals β˜…β˜†β˜† Start Lab
405 πŸ“– Group Elements By Count β˜…β˜†β˜† Start Lab
406 πŸ“– Sorted Array Last Insertion Index β˜…β˜†β˜† Start Lab
407 πŸ“– Group Array Into Object β˜…β˜†β˜† Start Lab
408 πŸ“– Invert Object Key-Value Pairs β˜…β˜†β˜† Start Lab
409 πŸ“– Iterable to Hash β˜…β˜†β˜† Start Lab
410 πŸ“– Lowercase Object Keys β˜…β˜†β˜† Start Lab
411 πŸ“– Map Array to Object β˜…β˜†β˜† Start Lab
412 πŸ“– Map Object Keys β˜…β˜†β˜† Start Lab
413 πŸ“– Map Object Values β˜…β˜†β˜† Start Lab
414 πŸ“– Mapped Array Average β˜…β˜†β˜† Start Lab
415 πŸ“– Mapped Array Sum β˜…β˜†β˜† Start Lab
416 πŸ“– Retrieve Function Arguments with nthArg β˜…β˜†β˜† Start Lab
417 πŸ“– Object From Pairs β˜…β˜†β˜† Start Lab
418 πŸ“– Object to Entries β˜…β˜†β˜† Start Lab
419 πŸ“– Omit Matching Object Keys β˜…β˜†β˜† Start Lab
420 πŸ“– Omit Object Keys β˜…β˜†β˜† Start Lab
421 πŸ“– Exploring JavaScript Programming Fundamentals β˜…β˜†β˜† Start Lab
422 πŸ“– Pick Matching Object Keys β˜…β˜†β˜† Start Lab
423 πŸ“– Pick Object Keys β˜…β˜†β˜† Start Lab
424 πŸ“– Pluck Values From Array of Objects β˜…β˜†β˜† Start Lab
425 πŸ“– Transforming Object Properties with JavaScript β˜…β˜†β˜† Start Lab
426 πŸ“– Unflatten Nested JavaScript Objects β˜…β˜†β˜† Start Lab
427 πŸ“– Uppercase Object Keys β˜…β˜†β˜† Start Lab
428 πŸ“– Mapping Unique Array Values to Object Keys β˜…β˜†β˜† Start Lab
429 πŸ“– Array to Object Based on Key β˜…β˜†β˜† Start Lab
430 πŸ“– Copy to Clipboard Async β˜…β˜†β˜† Start Lab
431 πŸ“– Deep Clone Object β˜…β˜†β˜† Start Lab
432 πŸ“– Deep Merge Objects β˜…β˜†β˜† Start Lab
433 πŸ“– Euclidean Distance Calculation in JavaScript β˜…β˜†β˜† Start Lab
434 πŸ“– Get Nested Object Property From Path String β˜…β˜†β˜† Start Lab
435 πŸ“– Checking Same-Origin URLs with JavaScript β˜…β˜†β˜† Start Lab
436 πŸ“– Symbolize Object Keys β˜…β˜†β˜† Start Lab
437 πŸ“– Transform Function Arguments β˜…β˜†β˜† Start Lab
438 πŸ“– Ungroup Array Elements β˜…β˜†β˜† Start Lab
439 πŸ“– Ungroup Array Elements Based on Function β˜…β˜†β˜† Start Lab
440 πŸ“– Check if Arrays Have Same Contents β˜…β˜†β˜† Start Lab
441 πŸ“– Create Event Hub β˜…β˜†β˜† Start Lab
442 πŸ“– Implementing Levenshtein Distance in JavaScript β˜…β˜†β˜† Start Lab
443 πŸ“– Check Object Equality β˜…β˜†β˜† Start Lab
444 πŸ“– Sorting Object Arrays by Custom Order β˜…β˜†β˜† Start Lab
445 πŸ“– Exploring JavaScript Fundamentals Through Exercise... β˜…β˜†β˜† Start Lab
446 πŸ“– Delay Async Function Execution β˜…β˜†β˜† Start Lab
447 πŸ“– Create Human-Readable Time Formatting β˜…β˜†β˜† Start Lab
448 πŸ“– Map an Object to an Array β˜…β˜†β˜† Start Lab
449 πŸ“– Mapped Array Symmetric Difference β˜…β˜†β˜† Start Lab
450 πŸ“– Mapped Array Union β˜…β˜†β˜† Start Lab
451 πŸ“– Array to Flags Object β˜…β˜†β˜† Start Lab
452 πŸ“– JavaScript Functions Introduction β˜…β˜†β˜† Start Lab
453 πŸ“– Value Is Async Function β˜…β˜†β˜† Start Lab
454 πŸ“– Iterate Over Object's Own Properties β˜…β˜†β˜† Start Lab
455 πŸ“– Replace or Append Array Value β˜…β˜†β˜† Start Lab
456 πŸ“– Iterate Over Object's Own Properties in Reverse β˜…β˜†β˜† Start Lab
457 πŸ“– Freeze Set Object β˜…β˜†β˜† Start Lab
458 πŸ“– Function Currying in JavaScript β˜…β˜†β˜† Start Lab
459 πŸ“– Initialize N-Dimensional Array β˜…β˜†β˜† Start Lab
460 πŸ“– Pull Values From Array β˜…β˜†β˜† Start Lab
461 πŸ“– Convert Function to Variadic β˜…β˜†β˜† Start Lab
462 πŸ“– Asynchronous Functions to Promises β˜…β˜†β˜† Start Lab
463 πŸ“– Hands-On Selection Sort in JavaScript β˜…β˜†β˜† Start Lab
464 πŸ“– Merge Sorted Arrays β˜…β˜†β˜† Start Lab
465 πŸ“– Recursive Array Permutations in JavaScript β˜…β˜†β˜† Start Lab
466 πŸ“– Bind Function Context β˜…β˜†β˜† Start Lab
467 πŸ“– String Is Valid JSON β˜…β˜†β˜† Start Lab
468 πŸ“– Implementing K-Nearest Neighbors in JavaScript β˜…β˜†β˜† Start Lab
469 πŸ“– Max Array Value Based on Function β˜…β˜†β˜† Start Lab
470 πŸ“– Min Array Value Based on Function β˜…β˜†β˜† Start Lab
471 πŸ“– Group Data from Multiple Arrays β˜…β˜†β˜† Start Lab
472 πŸ“– Merging JavaScript Objects with Reduce and Concat β˜…β˜†β˜† Start Lab
473 πŸ“– Rename Object Keys β˜…β˜†β˜† Start Lab
474 πŸ“– Unwinding Object Arrays in JavaScript β˜…β˜†β˜† Start Lab
475 πŸ“– Object to Query String β˜…β˜†β˜† Start Lab
476 πŸ“– Stringify Circular JSON β˜…β˜†β˜† Start Lab
477 πŸ“– Combine Object Arrays β˜…β˜†β˜† Start Lab
478 πŸ“– Order Array of Objects β˜…β˜†β˜† Start Lab
479 πŸ“– Rearrange Function Arguments β˜…β˜†β˜† Start Lab
480 πŸ“– Flatten JavaScript Object with Recursion β˜…β˜†β˜† Start Lab
481 πŸ“– Colorful Console Output with JavaScript β˜…β˜†β˜† Start Lab
482 πŸ“– Convert Hexadecimal to RGB String β˜…β˜†β˜† Start Lab
483 πŸ“– Pull Values From Array Based on Function β˜…β˜†β˜† Start Lab
484 πŸ“– Implementing K-Means Clustering in JavaScript β˜…β˜†β˜† Start Lab
485 πŸ“– Optimizing JavaScript Functions with Memoization β˜…β˜†β˜† Start Lab
486 πŸ“– Run Function Asynchronously β˜…β˜†β˜† Start Lab
487 πŸ“– Query String to Object β˜…β˜†β˜† Start Lab
488 πŸ“– Get Element Ancestors β˜…β˜†β˜† Start Lab
489 πŸ“– Delay Function Execution β˜…β˜†β˜† Start Lab
490 πŸ“– Function Property Names β˜…β˜†β˜† Start Lab
491 πŸ“– Form to Object β˜…β˜†β˜† Start Lab
492 πŸ“– JSON to CSV β˜…β˜†β˜† Start Lab
493 πŸ“– Call Functions With Context β˜…β˜†β˜† Start Lab
494 πŸ“– Debouncing Promises in JavaScript β˜…β˜†β˜† Start Lab
495 πŸ“– Bind Object Method β˜…β˜†β˜† Start Lab
496 πŸ“– Recursive Nesting of Linked JavaScript Objects β˜…β˜†β˜† Start Lab
497 πŸ“– JavaScript Event Introduction β˜…β˜†β˜† Start Lab
498 πŸ“– Array to HTML List β˜…β˜†β˜† Start Lab

More

About

JavaScript Practice Labs | This repo collects 498 of programming scenarios (labs and challenges) for JavaScript Practice Labs. This course contains lots of labs for JavaScript, each lab is a small JavaScript project with detailed guidance and solutions. You can practice your JavaScript skills by ...

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published