diff --git a/ArrayUtils.js b/ArrayUtils.js index 2869d1e..3987fa1 100644 --- a/ArrayUtils.js +++ b/ArrayUtils.js @@ -1,21 +1,86 @@ -class ArrayUtils{ +class ArrayUtils { + isEmpty(array) { + return array.length == 0; + } - isEmpty(array){return false;} + append(original, value) { + original.push(value); + return original; + } - append(original, value){return original;} + clone(original) { + let copyArray = []; + for (let e of original) { + copyArray.push(e); + } + return copyArray; + } - clone(original){return original;} + subArray(original, from, to) { + const newArray = []; + for (let i = from; i < to; i++) { + if (i < original.length) { + newArray.push(original[i]); + } else { + break; + } + } + return newArray; + } - subArray(original, from, to){return original;} + equals(arr1, arr2) { + for (let i = 0; i < arr1.length; i++) { + if (arr1[i] !== arr2[i]) return false; + } + return true; + } - equals(arr1, arr2){return false;} + fill(original, value) { + for (let i = 0; i < original.length; i++) { + original[i] = value; + } + return original; + } - fill(original, value){} + indexOf(original, value) { + for (let i = 0; i < original.length; i++) { + if (original[i] === value) return i; + } + return -1; + } - indexOf(original, value){return -1;} + remove(original, value) { + let newArray = []; + for (let e of original) { + if (e !== value) newArray.push(e); + } - remove(original, value){return original;} + return newArray; + } - reverse(original){} - -} \ No newline at end of file + 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]; + +// 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)); 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