You're Invited: Meet the Socket team at BSidesSF and RSAC - April 27 - May 1.RSVP
Socket
Sign inDemoInstall
Socket

tryit

Package Overview
Dependencies
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

tryit

Module to wrap try-catch for better performance and cleaner API.

1.0.3
latest
Source
npm
Version published
Maintainers
1
Created
Source

tryit

Tiny module wrapping try/catch in JavaScript.

It's literally 11 lines of code, just read it that's all the documentation you'll need.

install

npm install tryit

usage

What you'd normally do:

try {
    dangerousThing();
} catch (e) {
    console.log('something');
}

With try-it (all it does is wrap try-catch)

var tryit = require('tryit');

tryit(dangerousThing);

You can also handle the error by passing a second function

tryit(dangerousThing, function (e) {
    if (e) {
        console.log('do something');
    }
})

The second function follows error-first pattern common in node. So if you pass a callback it gets called in both cases. But will have an error as the first argument if it fails.

WHAT? WHY DO THIS!?

Primary motivation is having a clean way to wrap things that might fail, where I don't care if it fails. I just want to try it.

This includes stuff like blindly reading/parsing stuff from localStorage in the browser. If it's not there or if parsing it fails, that's fine. But I don't want to leave a bunch of empty catch (e) {} blocks in the code.

Obviously, this is useful any time you're going to attempt to read some unknown data structure.

In addition, my understanding is that it's hard for JS engines to optimize code in try blocks. By actually passing the code to be executed into a re-used try block, we can avoid having to have more than a single try block in our app. Again, this is not a primary motivation, just a potential side benefit.

license

MIT

Keywords

errors

FAQs

Package last updated on 27 Oct 2016

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