/
middle.js
64 lines (53 loc) · 1.93 KB
/
middle.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
//Implement middle which will take in an array and return the middle-most element(s) of the given array
// FUNCTION IMPLEMENTATION
const assertEqual = function (actual, expected) {
if (actual !== expected) {
console.log("🚨 🚨 🚨 🚨Assertion Failed: " + actual + " != " + expected);
} else {
console.log(`🎊 🎉 🎊 🎉Assertion Passed: ${actual} === ${expected}`);
}
};
// Implement a function eqArrays which takes in two arrays and returns true or false, based on a perfect match.
const eqArrays = require("./eqArrays")
// const eqArrays = (arr1, arr2) => {
// if (arr1.length != arr2.length) {
// return false;
// } else {
// for (let index = 0; index < arr1.length; index++) {
// if (arr1[index] !== arr2[index]) {
// return false;
// }
// }
// return true;
// }
// };
// console.log(eqArrays([1, 2, 3], [1, 2, 3])) // => true
// console.log(eqArrays([1, 2, 3], [3, 2, 1])) // => false
// console.log(eqArrays(["1", "2", "3"], ["1", "2", "3"])) // => true
// console.log(eqArrays(["1", "2", "3"], ["1", "2", 3])) // => false
//Implement assertArraysEqual which will take in two arrays and console.log an appropriate message to the console.
const assertArraysEqual = (arr1, arr2) => {
if (eqArrays(arr1,arr2)){
console.log("These arrays are Equal!!! 🎊 🎉 🎊 🎉")
} else {
console.log("These arrays are Not Equal!!! 🚨 🚨 🚨 🚨")
}
}
// assertArraysEqual([1, 2, 3], [1, 2, 3])
// assertArraysEqual([1, 2, 3], [3, 2, 1])
const middle = arr => {
var final = []
if (arr.length === 0 | arr.length === 1 | arr.length === 2) {
return final;
}
else if (arr.length % 2 != 0 ) {
final.push(arr[ (Math.floor(arr.length/2))])
//final.push(arr[arr.length/2]) //add middle index to end of function
return final;
} else {
final.push(arr[ (arr.length/2)-1])
final.push(arr[arr.length/2])
return final
}
}
module.exports = middle