JSK Weekly - March 6, 2019

This week the TypeScript users will be on their terrain. We have some great articles amongst which we can recommend great two-part article "TypeScript introduction" by Areknawo.

For all JavaScript beginners but also for more experienced users that would like a reminder about basic concepts we recommend "The Complete Guide to Loops in JavaScript" by "JavaScript Teacher".

React developers will definitely enjoy "A (re)introduction to React" by Ankita Masand while all Aurelia developers and all interested in this great framework, will benefit from part 2 of three parts series "How do we React?" by  Rob Eisenberg.


JavaScript Logging Basic Tips

Learn the essential aspects of client-side JavaScript error logging to help polish your debugging skills. Find the best tips and tools to get you started.

Authored by: Stackify

Promise resolution with objects including a then property

A deep dive into promise resolution values including a then function. Including surprising side-effect using dynamic imports.

Authored by: stefan judis

Understanding Memoization In JavaScript

As our applications grow and begin to carry out heavier computations, there comes an increasing need for speed ( 🏎️ ) and the optimization of processes becomes a necessity. When we ignore this concern, we end up with programs that take a lot of time and consume a monstrous chunk of system resources during execution.

Authored by: Scotch Development

State management pattern in JavaScript: Sharing data across components

When we talk about state management what we are really talking about is, how do we manage data across the components of a JavaScript application? A typical challenge found in building many applications is keeping different parts of the user interface synchronized.

Authored by: LogRocket

JavaScript Closure Quickly Explained

A closure happens when one function is inside another function, and the inner function wants to access a variable which belongs to the outer function. This article was originally published on my blog, as part of the Quickly Explained series. In JavaScript, every function creates its own scope.

Authored by: Tamal Anwar


The Complete Guide to Loops in JavaScript

I know there are plenty of places online (StackOverflow, MDN) that can be an excellent resource for exploring loops and Array iterable methods. But... sometimes it's good to write about something just so that these patterns settle in your mind and the knowledge is cemented for good.

Authored by: freeCodeCamp.org

What is the !! (not not) operator in JavaScript?

The other day I was rolling through some JavaScript to figure out how a 3rd party library ticked. As I scanned the lines of code I came across a line like the following: value = !!value; Unless you have been using JavaScript for a while this may look like some advanced VooDoo.

Authored by: Chris Love

Core features overview of JavaScript syntax (ES6)

Core features overview of JavaScript syntax (ES6) Several changes to JavaScript were introduced by ECMAScript 2015, also well-known as ES6. Here is a summary of a number... - Web design web development news, website design and online marketing. Web design, development, javascript, angular, react, vue, php, SEO, SEM, web hosting, e-commerce, website development and search engine optimization, social media management.

Authored by: MA-NO WebDesign&Dev

JavaScript Dates

If you do any amount of programming, you will likely cross the thorny subject of dates and times. It's a tricky subject because of all of the world's time zones, changing clocks, leap years and other oddities.

Authored by: JavaScript Kicks


TypeScript introduction

Gentle TypeScript introduction for JavaScript devs! 😉 TypeScript introduction. Learn TypeScript. TS tutorial. Static typing basics.

Authored by: areknawo

TypeScript introduction - part II

In the previous article, I talked about TypeScript and why it's worth learning. I covered topics like primitive types, top types, unions, function, type guards etc., so if any of these phrases are unfamiliar to you, I recommend you to check the previous post first.

Authored by: areknawo

Node.js TypeScript #4. Paused and flowing modes of a readable stream

1. Node.js TypeScript #1. Modules, process arguments, basics of the File System2. Node.js TypeScript #2. The synchronous nature of the EventEmitter3. Node.js TypeScript #3. Explaining the Buffer4. Node.js TypeScript #4. Paused and flowing modes of a readable streamStreams are present in programming for a long time now and it looks like they are going to ...

Authored by: Marcin Wanago

TS Tricks: Type Guards

With everyone getting excited about Typescript I thought it'd be fun to do a walkthrough of one of my favorite features, type guards. These are type-safe functions that allow us to assert that an argument matches a certain type. The best part is these work at runtime!

Authored by: Matthew Gerstman (Slytherin)


Integrating Google Analytics With Angular 2+

For this tutorial, knowledge of HTML, CSS and JavaScript as well as some familiarity with Angular 2 development is expected. An understanding of Google analytics would be beneficial but is not absolutely necessary as it will be explained in the article.

Authored by: Scotch Development


A (re)introduction to React

In this tutorial, I'll first help you understand why Facebook felt the need to build a library called React. I'll cover all the basic concepts that you'd need to create your first React app. This tutorial aims to reintroduce React by clearly explaini...

Authored by: Ankita Masand

Creating a Live Search Feature in React Using Axios

Axios is a powerful HTTP client that allows to easily implement Ajax requests in a JavaScript app. We've covered the basics of using Axios with React here, so you can read that first if Axios or Axios + React is all new to you.

Authored by: Alligator

8 reasons to use styled-components

TL;DR: In this article, we will be looking at some of the various benefits of styled-components and why you should consider adopting it as your preferred CSS-in-JS framework. Styled components is a CSS-in-JS styling framework that uses tagged template literals in JavaScript and the awesome power of CSS to provide a platform that allows you to write actual CSS to style react components.

Authored by: Viclotana™

Throttle and Debounce

In this article, we're going to talk about two of the most important functions in frontend development, throttle and debounce. Both of these functions are commonly used to deal with situations where a user is causing an event handler to fire on repeat and we want to slow down the underlying function call.

Authored by: Matthew Gerstman (Slytherin)


How do we React? - Part 2

You may have noticed that most other frameworks don't have HoCs, render props or anything like React.Children. These account for a lot the differences between React and other frameworks. How would you solve these use cases if you had to switch to [other framework]?

Authored by: Aurelia


Sliding In And Out Of Vue.js

One of the key advantages of Vue.js is that it plays nicely with other code: it is easy to embed progressively into other applications, but it is also easy to wrap up non-Vue code into Vue. This article explores this second advantage, covering three distinct types of third-party JavaScript and ways to embed each of them in Vue.

Authored by: Smashing Magazine

Harnessing My Social Anxiety Using A Countdown Timer In Vue.js 2.6.7

Ben Nadel attempts to harness his social anxiety and use it to do something productive: play with the Vue.js Router for the first time, creating a countdown-timer that will count down the number of "sleeps" until he is back in his own bed.

Authored by: Ben Nadel


Node.js task runners: Are they right for you?

This post will cover the following topics: The history and philosophy behind Node.js Why task runners were developed for Node.js Different approaches taken by popular task runners How bash may be used as a simpler alternative The tooling ecosystem for JavaScript is incredible.

Authored by: LogRocket

Creating a REST API with Express.js and MongoDB

A Node.js with Express and MongoDB tutorial to learn step by step how to create a REST API for CRUD operations which can be consumed by a client application ...

Authored by: Robin Wieruch

Two-Factor Authentication With TOTP Using Node.js And Speakeasy

Almost two years ago I had written a tutorial around 2FA in a Node.js API with time-based one-time passwords. If you're unfamiliar, two-factor authentication is becoming the norm, which it wasn't necessarily back in 2017. If you're managing user accounts in your web applications, it is critical that you offer your users a second factor of authentication to prevent phishing and malicious login attempts.

Authored by: Nic Raboy

Libraries and Tools

Getting Started with Gridsome

The era of Static Site Generators is changing over time, a lot of cool tools are being created to help foster the JAMStack evolution and developers are embracing these tools. One of the tools

Authored by: Scotch Development

Marble.js 2.0 🔥 - reactive, better, functional, stronger

As we promised last year, version 2.0 brings the feature that probably everyone wanted to have from the very, very beginning - the WebSockets! The bidirectional event nature of the protocol fits perfectly to the reactive environment of Marble.js and for sure will show its sharp claws in the field.

Authored by: Józef Flakus


Automated Testing in React

A significant part of professional software development is writing automated testing. Why do we need them? Because automation tests are a big part of a process called 'continuous integration' which is the practice of integrating old code with new code.

Authored by: DiscoverSDK

Writing Tests for React Applications Using Jest and Enzyme

While it is important to have a well-tested API, solid test coverage is a must for any React application. Tests increase confidence in the code and helps prevent shipping bugs to users. That's why we're going to focus on testing in this post, specifically for React applications.

Authored by: CSS-Tricks

Functional Programming

Map, Filter, Reduce

In this article we'll go back to basics and cover three of the most important functions in functional programming, map, filter, and reduce. All three of these are useful functions for iterating over a list (or array) and doing some kind of transformation or computation.

Authored by: Matthew Gerstman (Slytherin)


Static Site Generators: A Beginner's Guide

If your next project is going to be a simple HTML website for a resumé, marketing, or documentation, static site generators are a great option.

Authored by: M. Antonietta Perna

Breaking Down the MarioNet Attack - Is it Even Viable?

Recently, a group of academic researchers gained a lot of attention by publishing a paper about a potential security issue related to service workers. They call it MarioNet. This has led to many in the media referencing this paper and possibly igniting a false sense of trouble for service workers.

Authored by: Chris Love