**JavaScript Sliding window pattern**The use of the Sliding Window technique can be done in a very specific scenario, where the

**size of window**for computation is

**fixed**throughout the complete nested loop. Only then the time complexity can be reduced.

**How to use Sliding Window Technique?**

The general use of Sliding window technique can be demonstrated as following:

- Find the size of window required
- Compute the result for 1st window, i.e. from start of data structure
- Then use a loop to slide the window by 1, and keep computing the result window by window.

**Example:**

Write a function called **maxSubarraySum **which accepts an array of integers and a number called **num**. The function should calculate the maximum sum of **num** consecutive elements in the array.

T**ime Complexity — O(N)**

# What is Big O Notation, and why does it matter

“Big O notation is a mathematical notation that describes the limiting behavior of a function when the argument tends towards a particular value or infinity. It is a member of a family of notations invented by Paul Bachmann, Edmund Landau, and others collectively called Bachmann–Landau notation or asymptotic notation.”

— Wikipedia’s definition of Big O notation

**Whatis ChartJS?**

Chart.js is a chart library that is available as a client-side JavaScript package. There are also derivatives for other frontend frameworks, like React, Vue, and Angular. It displays the chart on an HTML canvas element.

**Quick Start**

`npm install --save chart.js react-chartjs-2`

Then, import and use individual components:

import { Doughnut } from 'react-chartjs-2';<Doughnut data={...} />

After this quick start is done, create a component and add the following boiler plate for the Doughnut Chart.

If you need to work with a different graph chart all you need to change the Doughnut to Bar, Pie, Line.