TypeScript Map Implementation

0.1.0 · maintenance · verified Sun Apr 19

This library, `typescript-map`, provides a lightweight, TypeScript-first implementation of an ES6 Map-like data structure. Currently at version 0.1.0, it is designed for scenarios where a full ES6 Map polyfill is not desired or where bundle size is a critical concern, weighing in at just over 1 kilobyte gzipped. A key differentiator is its deliberate simplicity: it does not employ a hashing function. While this keeps the implementation small and straightforward, it means the library is explicitly *not* recommended for use with more than a few hundred keys or in performance-critical "hot path" operations, where native `Map` or more robust alternatives like `es6-map` would be superior. The release cadence appears to be slow or inactive given the low version number and its niche purpose. It is primarily intended for TypeScript projects needing a basic, type-safe map collection without significant overhead.

Common errors

Warnings

Install

Imports

Quickstart

Demonstrates basic instantiation, setting and getting values, type-safe usage with generics, initialization with an array, and a custom `fromJSON` method.

import { TSMap } from 'typescript-map';

// Basic usage, similar to native Map
const myMap = new TSMap();
myMap.set('foo', 'bar');
console.log(myMap.get('foo')); // Prints: bar

// With TypeScript generics for type safety
const typedMap = new TSMap<string, number>();
typedMap.set('apple', 1);
typedMap.set('banana', 2);
console.log(typedMap.get('apple')); // Prints: 1

// Initialize with an array of key-value pairs
const initMap = new TSMap<string, string>([
  ['key1', 'valueA'],
  ['key2', 'valueB']
]);
console.log(initMap.size); // Prints: 2

// Example of a custom function: fromJSON
const jsonMap = new TSMap().fromJSON({
    name: 'Alice',
    age: 30,
    city: 'New York'
}, false);
console.log(jsonMap.get('name')); // Prints: Alice

view raw JSON →