# stringset

> fast and robust stringset

Latest version **0.2.1** (published 2013-09-26) · MIT license · 0 weekly downloads

## Install

```sh
npm install stringset
pnpm add stringset
yarn add stringset
bun add stringset
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.2.1 |
| Published | 2013-09-26 |
| First published | 2013-04-14 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 0 |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 6 |
| Author | Olov Lassus |
| Maintainers | olov |
| Keywords | stringset, set, __proto__ |

## Links

- npm: https://www.npmjs.com/package/stringset
- Repository: https://github.com/olov/stringset
- npm.io page: https://npm.io/package/stringset

## Alternatives

- [@mce/gif](https://npm.io/package/@mce/gif.md) — 2.6K weekly downloads
- [cleanse](https://npm.io/package/cleanse.md) — 173 weekly downloads
- [str](https://npm.io/package/str.md) — 127 weekly downloads
- [naming](https://npm.io/package/naming.md) — 95 weekly downloads
- [tap-telco-api](https://npm.io/package/tap-telco-api.md) — 19 weekly downloads

## Recent versions

- 0.2.1 (latest) — 2013-09-26
- 0.2.0 — 2013-04-14
- 0.1.0 — 2013-04-14

## README

# stringset.js
A fast and robust stringset implementation that can hold any string items,
including `__proto__`, with minimal overhead compared to a plain object.
Works in node and browsers.

The API is created to be as close to the ES6 Set API as possible. Prefer
`ss.remove("key")` for deleting a key. ES6 Set uses `set.delete("key")`
instead and for that reason `ss['delete']("key")` is available as a
stringset alias as well. Never do `ss.delete("key")` unless you're
certain to be in the land of ES5 or later.



## Examples
Available in `examples.js`

```javascript
var StringSet = require("stringset");

var ss1 = new StringSet();
ss1.add("greeting");
ss1.add("check");
ss1.add("__proto__");
console.log(ss1.has("greeting")); // true
console.log(ss1.has("__proto__")); // true
ss1.remove("greeting");
console.log(ss1.items()); // [ 'check', '__proto__' ]
console.log(ss1.toString()); // {"check","__proto__"}

var ss2 = new StringSet(["one", "two"]);
console.log(ss2.isEmpty()); // false
console.log(ss2.size()); // 2

var ss3 = ss1.clone();
ss3.merge(ss2);
ss3.addMany(["a", "b"]);
console.log(ss3.toString()); // {"check","one","two","a","b","__proto__"}
```



## Installation

### Node
Install using npm

    npm install stringset

```javascript
var StringSet = require("stringset");
```

### Browser
Clone the repo and include it in a script tag

    git clone https://github.com/olov/stringset.git

```html
<script src="stringset/stringset.js"></script>
```

---
_Source: https://npm.io/package/stringset · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
