1.0.5-beta.3 • Published 7 years ago

array2 v1.0.5-beta.3

Weekly downloads
3
License
BSD-2-Clause
Repository
github
Last release
7 years ago

array2

Implements a Array with Map features: get, set, unset, containsKey, size etc,.

Author: Allex Wang (allex.wxn@gmail.com)

MIT Licensed

Install

npm install array2

Usage

var ArrayMap = require("array2").ArrayMap

var arr = new ArrayMap()
arr.push.apply(arr, [1, 2, 3])
console.log('.clear().size() =>', arr.clear().size())
arr.set('6', 300)
arr.set('2', 3000)
arr.set('300', 3)
arr.remove(4)
arr.push.apply(arr, ['20', 30, 40, 50])

console.log('[6] =>', arr.get('6'))
console.log(':8 =>', arr.get(8))
console.log('keys =>', arr.keys())
console.log('values =>', arr.values())

console.log('===== test ArrayMap with a custom primary key ====');

var arr2 = new ArrayMap([
    {id: 1, v: 100},
    {id: 1, v: 10000},
    {id: 2, v: 200},
    {id: 3, v: 300},
    {id: 4, v: 400},
    {id: 5, v: 500},
    {id: 6, v: 600},
    {id: 7, v: 700},
], o => o.id)

arr2.forEach((v, i) => console.log(i, '=>', v))

console.log('splice(2, 3) =>', arr2.splice(2, 3))
console.log('arr2.map()', arr2.map((o, i) => o.v))
console.log('keys =>', arr2.keys())
console.log('values =>', arr2.values())
console.log('unset(7)')
arr2.unset(7)
console.log('containsKey(7) =>', arr2.containsKey(7));

console.log('===== test ArrayMap with a fixed length ====');

var arr3 = new ArrayMap([1, 2, 3, 4], {maxSize: 3})
console.log('keys =>', arr3.keys()) // => 2, 3, 4

arr3.set('foo', 'foo_value');
console.log('values=>', arr3.values()) // 3, 4, foo_value
1.0.5-beta.3

7 years ago

1.0.5-beta.2

7 years ago

1.0.5-beta.1

7 years ago

1.0.4

7 years ago

1.0.3

7 years ago

1.0.2

8 years ago

1.0.1

8 years ago

1.0.0

8 years ago