Using pre-commit hook in package.json

Gagandeep Singh
One of the traits of someone who follows or moving towards a good coding practice environment is making sure that you are not pushing the code which may have linting issues and/or failing unit tests. Adding a pre-commit hook forces to check the lint and run unit tests (or any other script) to be sure that everything is good before committing changes. npm i --save-dev pre-commit Next step is to update the package.

undefined and null in Javascript

Gagandeep Singh
undefined In Javascript undefined (a primitive type in Javascript) gets assigned to a variable that we declare but don’t assign a value to. It’s Javascript’s way of telling that the value of this variable is not defined. Even a function in Javascript which does not return anything, will return undefined by default. So, to avoid any error we should never assign undefined to a variable manually. typeof undefined outputs: undefined null Unlike undefined, null (another primitive type in Javascript) is used when we want to manually or intentionally set the value of a variable to be empty.

Browser storage (overview)

Gagandeep Singh
Storing data on the machine of the user Data is available to the user on that particular machine and hence cannot be shared with anyone else Example: Storing data such as items in my shopping cart or recently viewed products Different types of browser storage options available are: Local storage / Session storage Cookies IndexedDB Local Storage /Session Storage key-value pairs to store data data can read/write from/to local or session storage only via javascript or user better for storing simple values and not for storing complex values Cookies simple key-value pairs with some configuration options can be cleared by using javascript or by the user data in the cookies is send to the server (they are attached to the headers of the http request) not good for complex data IndexedDB client side database can be used with a query language good for storing complex data on client side can be cleared by user or javascript