Engrain by ByteRush

JS.15 7 concepts

The coding round II: polyfills

Implement core language and library features from scratch, matching the spec's important edge cases.

  1. JS.15.01call, apply and bindCoreMid-levelBeing written
  2. JS.15.02Array map, filter, reduce, forEachCoreMid-levelBeing written
  3. JS.15.03Array flat and flatten with depthCoreMid-levelBeing written
  4. JS.15.04A Promise implementation (Promises/A+ core)CoreSeniorBeing written
  5. JS.15.05Promise.all, allSettled, race, anyCoreMid-levelBeing written
  6. JS.15.06new, instanceof and Object.createMid-levelBeing written
  7. JS.15.07JSON.stringify (subset) and deepEqualSeniorBeing written

Interview questions in this module

  1. Write a polyfill for Array.prototype.reduce. What happens with an empty array and no initial value?
  2. Implement Function.prototype.call without using call/apply/bind.
  3. Implement Array.prototype.flat with a depth argument, iteratively.
  4. Implement a basic Promise class with then.
  5. Implement Promise.any.
  6. Implement the new operator as a function.
  7. Implement deepEqual.