A wrapper object for 2d arrays that provides a plethora of useful methods.
Inspired by Array2d.js, this package provides method syntax in order to manipulate 2d arrays, rather than having to call methods from a global object and pass in the 2d array every method call.
npm install planar --save
To use Planar, simply call the Planar constructor and pass in a 2d array:
const Planar = require('planar'); // Require the Planar package
let grid = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
];
let planar = new Planar(grid); // Instantiate a Planar object, passing a 2d array as the argument
console.log(planar.area()); // 9
To access cell values, use either the provided get()
method or array syntax (planar[row][col]
):
let planar = new Planar([
[1, 2],
[3, 4]
]);
console.log(planar.get(1, 1)); // 1
console.log(planar[1][1]); // 1
Naturally, this applies for the set()
method as well:
planar.set(1, 1, 'a');
console.log(planar.get(1, 1)); // 'a'
planar[1][1] = 'b';
console.log(planar[1][1]); // 'b'
To create a Planar object, you must pass in a rectangular 2d array. When attempting to construct a Planar object with an invalid argument, an Error object will be returned instead of a Planar instance:
let grid1 = [1];
let planar1 = new Planar(grid1);
console.log(instanceof planar1); // Error (not a 2d array)
let grid2 = [
[1, 2, 3],
[4, 5, 6, 7]
];
let planar2 = new Planar(grid2);
console.log(instanceof planar2) // Error (not rectangular)
let grid3 = [[]];
let planar3 = new Planar(grid2);
console.log(instanceof planar2); // Planar
The following list provides basic details on what methods are provided by the Planar package. For full documentation, click here.
get(row, col)
- Get the value of a cell.
set(row, col)
- Sets the value of a cell.
grid()
- Get the internal 2d array of the Planar.
dimen()
- Get the dimensions of the Planar as an array of the format [width, height].
area()
- Get the area of the Planar.