2djs

0.1.1 • Public • Published

2djs CircleCI

Greenkeeper badge

JavaScript library for 2-dimensional array.

Install

npm install --save 2djs

or,

yarn add 2djs

API

constructor

import TwoDimensionalArray from '2djs';
const items = [
  [1, 2, 3, 4],
  [5, 6, 7, 8],
  [9, 10, 11, 12],
];
const array = new TwoDimensionalArray(items);

get()

const items = [ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], ];
const array = new TwoDimensionalArray(items);
array.get(); // [ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12] ]

stat()

console.log(array.stats());
{
  rowSize: 3,
  columnSize: 4
};

clear()

array.clear(); // []

rowSize()

const items = [ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], ];
const array = new TwoDimensionalArray(items);
array.rowSize(); // 3

columnSize()

const items = [ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], ];
const array = new TwoDimensionalArray(items);
array.columnSize(); // 4

at(rowPosition, columnPosition)

const items = [ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], ];
const array = new TwoDimensionalArray(items);
array.at(0, 0); // 1
array.at(2, 2); // 11
array.at(10000, 0); // null

row(position)

const items = [ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], ];
const array = new TwoDimensionalArray(items);
array.row(0); // [1, 2, 3, 4]
array.row(2); // [9, 10, 11, 12]

column(position)

const items = [ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], ];
const array = new TwoDimensionalArray(items);
array.column(0); // [1, 5, 9]
array.column(2); // [3, 7, 11]

rows()

const items = [ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], ];
const array = new TwoDimensionalArray(items);
array.rows(); // [ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], ]

columns()

const items = [ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], ];
const array = new TwoDimensionalArray(items);
array.columns(); // [ [ 1, 5, 9 ], [ 2, 6, 10 ], [ 3, 7, 11 ], [ 4, 8, 12 ] ]

firstRow()

const items = [ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], ];
const array = new TwoDimensionalArray(items);
array.firstRow(); // [1, 2, 3, 4]

firstColumn()

const items = [ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], ];
const array = new TwoDimensionalArray(items);
array.firstColumn(); // [1, 5, 9]

lastRow()

const items = [ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], ];
const array = new TwoDimensionalArray(items);
array.lastRow(); // [9, 10, 11, 12]

lastColumn()

const items = [ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], ];
const array = new TwoDimensionalArray(items);
array.lastColumn(); // [4, 8, 12]

add(twoDimensionalArray)

const items = [ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], ];
const array = new TwoDimensionalArray(items);
const arr = [ [13, 14, 15, 16], [17, 18, 19, 20] ];
array.add(arr); // [ [ 1, 2, 3, 4 ], [ 5, 6, 7, 8 ], [ 9, 10, 11, 12 ], [ 13, 14, 15, 16 ], [ 17, 18, 19, 20 ] ]

addRow(row)

const items = [ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], ];
const array = new TwoDimensionalArray(items);
array.addRow([13, 14, 15, 16]); // [ [ 1, 2, 3, 4 ], [ 5, 6, 7, 8 ], [ 9, 10, 11, 12 ], [ 13, 14, 15, 16 ] ]

addColumn(column)

const items = [ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], ];
const array = new TwoDimensionalArray(items);
array.addColumn([2, -1, 1]); // [ [ 1, 2, 3, 4, 2 ], [ 5, 6, 7, 8, -1 ], [ 9, 10, 11, 12, 1 ] ]

isMember(item)

const items = [ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], ];
const array = new TwoDimensionalArray(items);
array.isMember(1); // true
array.isMember(1000); // false

License

Copyright (c) 2020 kenju

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Readme

Keywords

Package Sidebar

Install

npm i 2djs

Weekly Downloads

6

Version

0.1.1

License

Apache-2.0

Unpacked Size

30.2 kB

Total Files

9

Last publish

Collaborators

  • kenju