BFE
.dev
buy us
a coffee
EN
Practice
Explore
EN
JavaScript Coding Questions
As a Front-End developer, JavaScript is the core skill of everything
Sort
Difficulty
Solved status
Company
Sort: most tried
Difficulty: medium
4. implement basic throttle()
JavaScript
Lodash
medium
52717 tried
16. create an Event Emitter
JavaScript
medium
32519 tried
2. implement curry() with placeholder support
JavaScript
medium
30382 tried
151. implement Array.prototype.map()
JavaScript
medium
27842 tried
5. implement throttle() with leading & trailing option
JavaScript
Lodash
medium
25502 tried
14. Implement a general memoization function - `memo()`
JavaScript
medium
22615 tried
32. implement `Promise.all()`
JavaScript
medium
21605 tried
7. implement debounce() with leading & trailing option
JavaScript
Lodash
medium
20739 tried
113. Virtual DOM I
JavaScript
Algorithm
DOM
medium
18738 tried
9. decode message
JavaScript
medium
17347 tried
21. implement JSON.stringify()
JavaScript
medium
16943 tried
8. can you shuffle() an array?
JavaScript
medium
16848 tried
10. first bad version
JavaScript
Algorithm
medium
15424 tried
58. get DOM tree height
JavaScript
Algorithm
DOM
medium
15353 tried
34. implement `Promise.any()`
JavaScript
medium
15258 tried
26. implement Object.assign()
JavaScript
medium
15011 tried
146. implement Array.prototype.reduce()
JavaScript
medium
14461 tried
67. create your own Promise
JavaScript
medium
14431 tried
161. toBe() or not.toBe()
JavaScript
medium
13676 tried
33. implement `Promise.allSettled()`
JavaScript
medium
13164 tried
165. remove characters
Algorithm
medium
12467 tried
92. throttle Promises
JavaScript
medium
12338 tried
57. create an Observable
JavaScript
medium
12112 tried
29. implement async helper - `sequence()`
JavaScript
medium
12080 tried
13. Implement a Queue by using Stack
JavaScript
Algorithm
medium
10729 tried
64. auto-retry Promise on rejection
JavaScript
medium
10677 tried
63. create `_.cloneDeep()`
JavaScript
Algorithm
Lodash
medium
10617 tried
12. implement Immutability helper
JavaScript
medium
9901 tried
130. create LazyMan()
JavaScript
medium
9745 tried
30. implement async helper - `parallel()`
JavaScript
medium
9255 tried
68. get DOM tags
JavaScript
Algorithm
DOM
medium
8482 tried
104. Traverse DOM level by level
JavaScript
Algorithm
DOM
medium
8419 tried
110. serialize and deserialize binary tree
JavaScript
Algorithm
medium
8373 tried
103. implement Math.sqrt()
JavaScript
Algorithm
medium
7551 tried
168. move zeros
JavaScript
Algorithm
medium
7195 tried
122. implement memoizeOne()
JavaScript
medium
7097 tried
20. Detect data type in JavaScript
JavaScript
medium
7095 tried
56. call APIs with pagination
JavaScript
medium
7090 tried
123. implement Promise.prototype.finally()
JavaScript
medium
6839 tried
53. write your own `extends` in es5
JavaScript
medium
6647 tried
69. implement deep equal `_.isEqual()`
JavaScript
Lodash
medium
6090 tried
61. create your own `Function.prototype.call`
JavaScript
medium
6069 tried
135. localStorage with expiration
JavaScript
medium
6009 tried
125. implement classNames()
JavaScript
medium
5753 tried
36. create a fake timer(setTimeout)
JavaScript
medium
5650 tried
158. Previous Left Sibling
JavaScript
DOM
medium
5624 tried
101. merge identical API calls
JavaScript
medium
5334 tried
85. implement `_.get()`
JavaScript
Lodash
medium
5257 tried
173. uncompress string
JavaScript
string
algorithm
medium
5170 tried
22. implement JSON.parse()
JavaScript
medium
5103 tried
59. create a browser history
JavaScript
medium
5059 tried
156. implement `_.set()`
JavaScript
Lodash
medium
4875 tried
117. event delegation
JavaScript
medium
4528 tried
83. create an interval
JavaScript
medium
4424 tried
24. create a Priority Queue in JavaScript
JavaScript
Algorithm
medium
4396 tried
131. implement _.chunk()
JavaScript
Lodash
medium
4361 tried
66. remove duplicates from an array
JavaScript
Algorithm
medium
4248 tried
52. create a middleware system
JavaScript
medium
4212 tried
139. implement _.partial()
JavaScript
Lodash
medium
4124 tried
134. create your own Cookie
JavaScript
medium
4049 tried
86. Generate Fibonacci Number
JavaScript
Algorithm
medium
3990 tried
152. Find Top k Elements
JavaScript
Algorithm
medium
3984 tried
112. remove duplicate characters in a string
JavaScript
Algorithm
string
medium
3956 tried
65. add comma to number
JavaScript
medium
3940 tried
41. implement Merge Sort
JavaScript
Algorithm
medium
3733 tried
95. implement String.prototype.trim()
JavaScript
medium
3706 tried
88. support negative Array index in JavaScript
JavaScript
medium
3689 tried
149. interpolation
JavaScript
medium
3566 tried
90. write your own `instanceof`
JavaScript
medium
3547 tried
166. validate number string
JavaScript
Algorithm
string
medium
3517 tried
43. implement Quick Sort
JavaScript
Algorithm
medium
3500 tried
170. Generate CSS Selector for target element
JavaScript
medium
3480 tried
132. the angle between hour hand and minute hand of a clock
JavaScript
medium
3457 tried
55. highlight keywords in HTML string
JavaScript
Algorithm
medium
3457 tried
79. convert snake_case to camelCase
JavaScript
medium
3348 tried
27. implement completeAssign()
JavaScript
medium
3145 tried
70. implement Observable.from()
JavaScript
medium
3142 tried
136. find median of two sorted array
JavaScript
Algorithm
medium
3030 tried
153. uglify CSS class names
JavaScript
medium
2880 tried
169. LRU - Chrome storage automatic eviction
JavaScript
Algorithm
medium
2808 tried
82. find available meeting slots
JavaScript
Algorithm
medium
2652 tried
164. implement Immer produce()
JavaScript
medium
2589 tried
45. find the K-th largest element in an unsorted array
JavaScript
Algorithm
medium
2444 tried
172. implement `Math.clz32()`
JavaScript
medium
2366 tried
71. implement Observable Subject
JavaScript
medium
2133 tried
111. Count palindromic substrings
JavaScript
Algorithm
string
medium
2110 tried
108. Implement a Stack by using Queue
JavaScript
Algorithm
medium
2103 tried
119. create a tokenizer
JavaScript
medium
2045 tried
99. extract all anchor element from HTML string
JavaScript
medium
1948 tried
171. create callback on message channel
JavaScript
medium
1824 tried
84. create a fake timer (setInterval)
JavaScript
medium
1797 tried
143. Virtual DOM IV - JSX 1
JavaScript
medium
1769 tried
98. validate an IP address
JavaScript
medium
1742 tried
78. convert HEX color to RGBA
JavaScript
medium
1466 tried
75. implement BigInt subtraction
JavaScript
Algorithm
medium
1263 tried
150. Virtual DOM V - JSX 2
JavaScript
medium
963 tried
160. implement atob()
JavaScript
medium
864 tried
144. serialize and deserialize data types not supported in JSON
JavaScript
medium
809 tried
76. implement BigInt addition with sign
JavaScript
medium
785 tried
124. calculate arithmetic expression
JavaScript
Algorithm
medium
726 tried
114. implement BigInt multiplication
JavaScript
medium
449 tried
77. implement BigInt subtraction with sign
JavaScript
medium
349 tried
126. BigDecimal addition
JavaScript
Algorithm
medium
270 tried
115. implement BigInt division
JavaScript
medium
251 tried
128. BigDecimal multiplication
JavaScript
Algorithm
medium
196 tried
129. BigDecimal Division
JavaScript
Algorithm
medium
138 tried
175. CSS Grid Layout auto-placement algorithm - dense
JavaScript
CSS
medium
100 tried