
Product
Reachability for Ruby Now in Beta
Reachability analysis for Ruby is now in beta, helping teams identify which vulnerabilities are truly exploitable in their applications.
@simmo/store
Advanced tools
JavaScript utility that provides a simple data store.
npm install @simmo/store
yarn add @simmo/store
import Store from '@simmo/store'
const store = new Store()
Returns a new store.
You can optionally pass a set of options when creating a store.
beforeSetExpects a function that returns a value. This value will be used instead of the value passed to set(). The function is provided a data object containing the following properties;
currentValue - Current value in the store, defaults to undefinedisNew - Boolean representing if the key is newkey - the key passed to set()newValue - the value passed to set()The example below would append the new value to the old.
const store = new Store({
beforeSet: ({ currentValue, isNew, newValue }) => {
return isNew ? [newValue] : [...currentValue, newValue]
},
})
store.set('Names', 'Mike')
store.get('Names')
// => ['Mike']
store.set('Names', 'Bob')
store.get('Names')
// => ['Mike', 'Bob']
set(key, value)Returns the value saved to the store.
store.set('Name', 'Mike')
// => 'Mike'
has(key)Returns true if the key exists, false if not.
store.set('Name', 'Mike')
store.has('Name')
// => true
store.has(1234)
// => false
get(key)Returns the key's value.
store.set('Name', 'Mike')
store.get('Name')
// => 'Mike'
delete(key)If the key exists, the key/value pair is removed and true is returned. If the key does not exist, it returns false.
store.set('Name', 'Mike')
store.delete('Name')
// => true
store.delete('Something else')
// => false
clear()Empties the store.
store.set('Name', 'Mike')
store.size
// => 1
store.clear()
store.size
// => 0
values()Returns an array of values from the store.
store.set('Name', 'Mike')
store.set('Github', '@simmo')
store.values()
// => ['Mike', '@simmo']
keys()Returns an array of the keys used in the store.
store.set('Name', 'Mike')
store.set('Github', '@simmo')
store.values()
// => ['Name', 'Github']
sizeReturns the number of key/value pairs in the store.
store.set('Name', 'Mike')
store.size
// => 1
MIT © Mike Simmonds
FAQs
JavaScript utility that provides a simple data store.
We found that @simmo/store demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

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.

Product
Reachability analysis for Ruby is now in beta, helping teams identify which vulnerabilities are truly exploitable in their applications.

Research
/Security News
Malicious npm packages use Adspect cloaking and fake CAPTCHAs to fingerprint visitors and redirect victims to crypto-themed scam sites.

Security News
Recent coverage mislabels the latest TEA protocol spam as a worm. Here’s what’s actually happening.