Skip to content
 
 

Latest commit

 

History

9 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JavaScript Practice

Purpose

This practice covers the following:

  1. Function as First Citizen.
  2. ES6 features.
  3. BDD with Mocha and Chai.
  4. NPM infrastructure.

Memoize

Overview

Memoize function idea has been taken from Lodash. Please take a look to the original specification. Then study the differences list:

  1. Cache key generation strategy is not customizable. Resolver support is not necessary.
  2. All arguments should be considered by caching mechanism. Not only the first argument.

Steps

  1. Fork this repository.
  2. Checkout forked repository.
  3. Install Node.js.
  4. Install project dependencies by npm install.
  5. Run tests by npm run test (tests should fail).
  6. Go to the src folder and implement memoize function.
  7. Check your progress against specification (tests).
  8. And don't forget to commit working decision ;)

Additional Tasks

  1. Extend original specification in test/memoize.spec.js with additional requirements.
  2. Try to simplify your decision by means of Lodash library.
  3. Propose the way to deal with ES2016 Decorators and implement some example.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages