Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 400,000 packages pre-installed, including stringset with all npm packages installed. Try it out:

var stringset = require("stringset")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

stringset v0.2.1

fast and robust stringset


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.


Available in examples.js

var StringSet = require("stringset");

var ss1 = new StringSet();
console.log(ss1.has("greeting")); // true
console.log(ss1.has("__proto__")); // true
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.addMany(["a", "b"]);
console.log(ss3.toString()); // {"check","one","two","a","b","__proto__"}



Install using npm

npm install stringset
var StringSet = require("stringset");


Clone the repo and include it in a script tag

git clone
<script src="stringset/stringset.js"></script>


RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free