New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

associative-array

Package Overview
Dependencies
Maintainers
1
Versions
8
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

associative-array

A combination of Map and Array, with order of keys maintained.

  • 1.0.2
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
1
Created
Source

associative-array

A combination of Map and Array that maintains key ordering.

Usage

var AssociativeArray = require('associative-array');

var arr = new AssociativeArray();

arr.push('key', {value: 'value'});
arr.push('key2', {value: 'value2'});
arr.push('key3', {value: 'value3'});

arr.has('key'); //true
arr.has('beans'); //false

arr.length; //3

arr.push('key3', {value: 'value3 again'});

arr.length; //3

arr.map(function(val, idx, key) {
  return idx + ':' + val.value + ':' key;
}); //['0:value:key', '1:value2:key2', '2:value3:key3']


arr.remove('key2');

arr.map(function(val, idx, key) {
  return idx + ':' + val.value + ':' key;
}); //['0:value:key', '1:value3:key3']

API

AssociativeArray(size)

Construct a new AssociativeArray.

  • size int - the initial size of the underlying Array.

AssociativeArray.length

The number of items currently stored in the AssociativeArray.

AssociativeArray.push(key, value)

Push a new key, value pair onto the AssociativeArray. Will not affect the AssociativeArray if key is already in it.

  • key mixed - the key to associate with value. Can be any key supported by Map.
  • value mixed - the value to store
  • returns this

AssociativeArray.pop()

Pop the last value off of the AssociativeArray.

  • returns mixed - the removed last value.

AssociativeArray.has(key)

Check whether the AssociativeArray contains key.

  • key mixed - the key to look for
  • returns boolean

AssociativeArray.get(key)

Get the value associated with key.

  • key mixed - the key to look for
  • returns mixed

AssociativeArray.getIdx(index)

Get the value stored at index.

  • index int - the index to look up
  • returns mixed

AssociativeArray.first()

Get the first value.

  • returns mixed

AssociativeArray.last()

Get the last value.

  • returns mixed

AssociativeArray.set(key, value, index)

Set a key, value pair at a particular index in the AssociativeArray. Replaces any value that previously occupied that index. If key is already present in the AssociativeArray, value will replace the old value if index matches the current index of key, or if index is not supplied. Otherwise, set() will not affect the AssociativeArray if key is already in it. Omitting index makes this equivalent to AssociativeArray.push(key, value) when key is not already present in the AssociativeArray.

  • key mixed - the key to associate with value. Can be any key supported by Map.
  • value mixed - the value to store
  • index int - the index to store value at
  • returns this

AssociativeArray.reset()

Clear all values from the AssociativeArray.

  • returns this

AssociativeArray.forEach(fn)

Iterate over the values in the AssociativeArray.

  • fn function - the callback to execute with each value, index, and key. If fn returns false, the loop will be broken.
  • returns this

AssociativeArray.map(fn)

Map the values in the AssociativeArray to a plain Array.

  • fn function - the callback to execute with each value, index, and key.
  • returns array

AssociativeArray.filter(fn)

Return a plain Array of values in the AssociativeArray which pass the fn test.

  • fn function - the callback to test each value with. Should return boolean.
  • returns array

AssociativeArray.remove(key)

Remove the value associated with key from the AssociativeArray.

  • key mixed - the key to look for
  • returns mixed - the removed value

Keywords

FAQs

Package last updated on 28 Aug 2015

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc