From e6d79230322259e40d08188f795c81e598f3bdb4 Mon Sep 17 00:00:00 2001 From: Michael Date: Sat, 28 Nov 2020 15:19:39 -0500 Subject: [PATCH 1/3] Create index.html. Complete and call first function --- ArrayUtils.js | 42 ++++++++++++++++++++++++++++++------------ index.html | 9 +++++++++ 2 files changed, 39 insertions(+), 12 deletions(-) create mode 100644 index.html diff --git a/ArrayUtils.js b/ArrayUtils.js index 2869d1e..9788632 100644 --- a/ArrayUtils.js +++ b/ArrayUtils.js @@ -1,21 +1,39 @@ -class ArrayUtils{ +class ArrayUtils { + isEmpty(array) { + return array.length == 0; + } - isEmpty(array){return false;} + append(original, value) { + return original; + } - append(original, value){return original;} + clone(original) { + return original; + } - clone(original){return original;} + subArray(original, from, to) { + return original; + } - subArray(original, from, to){return original;} + equals(arr1, arr2) { + return false; + } - equals(arr1, arr2){return false;} + fill(original, value) {} - fill(original, value){} + indexOf(original, value) { + return -1; + } - indexOf(original, value){return -1;} + remove(original, value) { + return original; + } - remove(original, value){return original;} + reverse(original) {} +} - reverse(original){} - -} \ No newline at end of file +let arrayUtils = new ArrayUtils(); + +let arr = [1, 2, 3, 4, 5]; +let arr2 = []; +console.log(arrayUtils.isEmpty(arr)); diff --git a/index.html b/index.html new file mode 100644 index 0000000..c653b75 --- /dev/null +++ b/index.html @@ -0,0 +1,9 @@ + + + + + + + + Hello World + \ No newline at end of file From 932b1708d963a6e4a1198cfd20ba01787ccdef0d Mon Sep 17 00:00:00 2001 From: = Date: Sat, 28 Nov 2020 15:39:56 -0500 Subject: [PATCH 2/3] Complete up to equals() method --- ArrayUtils.js | 35 ++++++++++++++++++++++++++++------- 1 file changed, 28 insertions(+), 7 deletions(-) diff --git a/ArrayUtils.js b/ArrayUtils.js index 9788632..d4fab04 100644 --- a/ArrayUtils.js +++ b/ArrayUtils.js @@ -4,19 +4,35 @@ class ArrayUtils { } append(original, value) { + original.push(value); return original; } clone(original) { - return original; + let copyArray = []; + for (let e of original) { + copyArray.push(e); + } + return copyArray; } subArray(original, from, to) { - return original; + const newArray = []; + for (let i = from; i < to; i++) { + if (i < original.length) { + newArray.push(original[i]); + } else { + break; + } + } + return newArray; } equals(arr1, arr2) { - return false; + for (let i = 0; i < arr1.length; i++) { + if (arr1[i] !== arr2[i]) return false; + } + return true; } fill(original, value) {} @@ -32,8 +48,13 @@ class ArrayUtils { reverse(original) {} } -let arrayUtils = new ArrayUtils(); +const arrayUtils = new ArrayUtils(); +let array = [1, 2, 3, 4, 5]; +let array2 = [1, 2, 3, 4, 5]; +let array3 = ["cat", "dog", "penguine"]; -let arr = [1, 2, 3, 4, 5]; -let arr2 = []; -console.log(arrayUtils.isEmpty(arr)); +console.log(arrayUtils.isEmpty(array)); +console.log(arrayUtils.append(array, 6)); +console.log(arrayUtils.clone(array)); +console.log(arrayUtils.subArray(array, 2, 4)); +console.log(arrayUtils.equals(array, array2)); // should return false because append() adds another element to the first array. From e3bd7b1323f03698e39240ee7e99bdb3c4d0d858 Mon Sep 17 00:00:00 2001 From: = Date: Sat, 28 Nov 2020 15:51:51 -0500 Subject: [PATCH 3/3] Complete all methods in class --- ArrayUtils.js | 44 +++++++++++++++++++++++++++++++++++--------- 1 file changed, 35 insertions(+), 9 deletions(-) diff --git a/ArrayUtils.js b/ArrayUtils.js index d4fab04..3987fa1 100644 --- a/ArrayUtils.js +++ b/ArrayUtils.js @@ -35,26 +35,52 @@ class ArrayUtils { return true; } - fill(original, value) {} + fill(original, value) { + for (let i = 0; i < original.length; i++) { + original[i] = value; + } + return original; + } indexOf(original, value) { + for (let i = 0; i < original.length; i++) { + if (original[i] === value) return i; + } return -1; } remove(original, value) { - return original; + let newArray = []; + for (let e of original) { + if (e !== value) newArray.push(e); + } + + return newArray; } - reverse(original) {} + reverse(original) { + let reversedArr = []; + for (let e of original) { + reversedArr.unshift(e); + } + return reversedArr; + } } +// Create reference to class const arrayUtils = new ArrayUtils(); + +// Given let array = [1, 2, 3, 4, 5]; let array2 = [1, 2, 3, 4, 5]; -let array3 = ["cat", "dog", "penguine"]; -console.log(arrayUtils.isEmpty(array)); -console.log(arrayUtils.append(array, 6)); -console.log(arrayUtils.clone(array)); -console.log(arrayUtils.subArray(array, 2, 4)); -console.log(arrayUtils.equals(array, array2)); // should return false because append() adds another element to the first array. +// Print returned values +// console.log(arrayUtils.isEmpty(array)); +// console.log(arrayUtils.append(array, 6)); +// console.log(arrayUtils.clone(array)); +// console.log(arrayUtils.subArray(array, 2, 4)); +// console.log(arrayUtils.equals(array, array2)); +// console.log(arrayUtils.fill(array, 20)); +// console.log(arrayUtils.indexOf(array, 3)); +// console.log(arrayUtils.remove(array, 3)); +console.log(arrayUtils.reverse(array, 3));