# Day 4: Classes Solution

Hello Friends in this article i am gone to share Hackerrank 10 days of javascript solutions with you. | Day 4: Classes Solution.

Also visit this link:  Day 4: Count Objects Solution

## Day 4: Classes Solution

### Objective

In this challenge, we practice using JavaScript classes.

Create a Polygon class that has the following properties:

• A constructor that takes an array of integer values describing the lengths of the polygon’s sides.
• A perimeter() method that returns the polygon’s perimeter.

Locked code in the editor tests the Polygon constructor and the perimeter method.

Note: The perimeter method must be lowercase and spelled correctly.

### Input Format

There is no input for this challenge.

### Output Format

The perimeter method must return the polygon’s perimeter using the side length array passed to the constructor.

### Explanation

Consider the following code:

```// Create a polygon with side lengths 3, 4, and 5
let triangle = new Polygon([3, 4, 5]);

// Print the perimeter
console.log(triangle.perimeter());```

When executed with a properly implemented Polygon class, this code should print the result of 3 + 4 + 5 = 12.

## Solution – Day 4: Classes

```/*
* Implement a Polygon class with the following properties:
* 1. A constructor that takes an array of integer side lengths.
* 2. A 'perimeter' method that returns the sum of the Polygon's side lengths.
*/
class Polygon {

constructor(sides) {
this.sides = sides
}
perimeter() {
return this.sides.reduce(function add(a, b) { return a + b; })
}
}

const rectangle = new Polygon([10, 20, 10, 20]);
const square = new Polygon([10, 10, 10, 10]);
const pentagon = new Polygon([10, 20, 30, 40, 43]);

console.log(rectangle.perimeter());
console.log(square.perimeter());
console.log(pentagon.perimeter());```

Complete the function in the editor. It has two parameters: a and b. It must return an object modeling a rectangle that has the following properties: Complete the function in the editor. It has two parameters: a and b. It must return an object modeling a rectangle that has the following properties: