@marliannesadoway/cmpt-315-assignment-2
Version:
This is a basic JavaScript library that provides some functions to manipulate arrays and objects.
41 lines • 2.27 kB
Markdown
# Project Title
cmpt-315-assignment-2
## Purpose
**_BEWARE:_ This library was published for learning purposes.
This is a basic JavaScript library that provides some functions to manipulate arrays and objects. It was created for CMPT 315 Assignment 2 at MacEwan University.
## Usage
**Install it:**
`npm install @marliannesadoway/cmpt-315-assignment-2`
**Require it:**
`const _ = require('@marliannesadoway/cmpt-315-assignment-2');`
**Call it:**
`const results1 = _.findNaNIndex([2, 4, NaN, 16, 32, NaN])` // => [2,5]
`const results2 = _.isArrayFactorChain([2, 4, 8, 16, 32])` // => true
`const results3 = _.countNumberOfArrays([2,8,[6],3,3,5,3,4,[5,4]])` // => 2
const matches = [
{ winner: 'Alice', loser: 'Bob', loser_points: 3 },
{ winner: 'Carol', loser: 'Dean', loser_points: 1 },
{ winner: 'Elise', loser: 'Bob', loser_points: 2 },
{ winner: 'Elise', loser: 'Carol', loser_points: 4 },
{ winner: 'Alice', loser: 'Carol', loser_points: 2 },
{ winner: 'Carol', loser: 'Dean', loser_points: 3 },
{ winner: 'Dean', loser: 'Elise', loser_points: 2 },
]
`const results4 = _.participants(matches)` // => ['Alice', 'Bob', 'Carol', 'Dean', 'Elise']
`const results5 = _.winnersObject(matches)` // =>
{
'Alice': ['Bob', 'Carol'],
'Bob': [],
'Carol': ['Dean'],
'Dean': ['Elise'],
'Elise': ['Bob', 'Carol'],
}
`const results6 = _.biggestLoser(matches)` // => 'Bob'
## Documentation
The following functions are currently implemented:
* `findNaNIndex(inputArray)`: Finds all the indexes where NaN is found in a given array of numbers and NaN.
* `isArrayFactorChain(inputArray)`: Determines if an array is a factor chain or not.
* `countNumberOfArrays(inputArray)`: Determines the count for the number of arrays inside a given array.
* `participants(inputArrayOfMatches)`: Creates an array of all the participant names in a series of game matches with no player listed more than once.
* `winnersObject(inputArrayOfMatches)`: Creates an object which lists each participant, and a list of who they've beaten, from a series of game matches.
* `biggestLoser(inputArrayOfMatches)`: Determines the player with the biggest tally of loser_points in a series of game matches.