
Company News
Socket Named Top Sales Organization by RepVue
Socket won two 2026 Reppy Awards from RepVue, ranking in the top 5% of all sales orgs. AE Alexandra Lister shares what it's like to grow a sales career here.
try-catch-callback
Advanced tools
try/catch block with a callback, used in [try-catch-core][]. Use it when you don't care about asyncness so much and don't want guarantees. If you care use [try-catch-core][].
try/catch block with a callback, used in try-catch-core. Use it when you don't care about asyncness so much and don't want guarantees. If you care use try-catch-core.
npm i try-catch-callback --save
For more use-cases see the tests
const tryCatchCallback = require('try-catch-callback')
Pass a synchronous
fnthat returns some result and handle completion or errors incbif given, otherwise it returns thunk which accepts thatcb. It's possible to not work in "async mode", if that's the case try to use try-catch-core for your case, which guarantees thatcbis called only once and always in next tick, using dezalgo and once.
Params
<fn> {Function}: function to be called.[opts] {Object}: optional options, such as context and args[opts.context] {Object}: context to be passed to fn[opts.args] {Array}: custom argument(s) to be pass to fn, given value is arrayified[opts.passCallback] {Boolean}: pass true if you want cb to be passed to fn args[opts.return] {Boolean}: if true returns error/value and does not calls cb[cb] {Function}: callback with cb(err, res) signature.returns {Function} thunk: if cb not given.Example
var tryCatch = require('try-catch-callback')
tryCatch(function () {
return 'fox qux'
}, function done (err, res) {
if (err) return console.error(err)
console.log(res) // => 'fox qux'
})
passing custom context
const tryCatch = require('try-catch-callback')
tryCatch(function () {
console.log(this.foo) // => 'bar'
console.log(this.baz) // => 'qux'
return `${this.foo}/${this.baz}`
}, {
context: { foo: 'bar', baz: 'qux' }
}, function done (err, res) {
if (err) return console.error(err)
console.log(res) // => 'bar/qux'
})
passing custom arguments
const tryCatchCallback = require('try-catch-callback')
const done = (err, res) => console.log(res) // => 'zzz123'
const opts = {
args: [ { foo: 'zzz' }, 123 ]
}
tryCatchCallback((ctx, qux) => {
return ctx.foo + qux
}, opts, done)
returning a thunk
const tryCatch = require('try-catch-callback')
const thunk = tryCatch((a, b) => {
return a + b + 3
}, { args: [1, 2] })
thunk((err, res) => {
console.log(res) // => 6
})
domain module is deprecated. This share almost the same API. | homepagenode@0.10 too. No RegExps, support for helpers and… more | homepagePull requests and stars are always welcome. For bugs and feature requests, please create an issue.
Please read the contributing guidelines for advice on opening issues, pull requests, and coding standards.
If you need some help and can spent some cash, feel free to contact me at CodeMentor.io too.
In short: If you want to contribute to that project, please follow these things
npm run commit to commit changes instead of git commit, because it is interactive and user-friendly. It uses commitizen behind the scenes, which follows Conventional Changelog idealogy.npm run release, which is standard-version and follows Conventional Changelog idealogy.Thanks a lot! :)
Documentation and that readme is generated using verb-generate-readme, which is a verb generator, so you need to install both of them and then run verb command like that
$ npm install verbose/verb#dev verb-generate-readme --global && verb
Please don't edit the README directly. Any changes to the readme must be made in .verb.md.
Clone repository and run the following in that cloned directory
$ npm install && npm test
Charlike Mike Reagent
Copyright © 2016-2017, Charlike Mike Reagent. MIT
This file was generated by verb-generate-readme, v0.4.2, on March 01, 2017.
Project scaffolded using charlike cli.
FAQs
try/catch block with a callback, used in [try-catch-core][]. Use it when you don't care about asyncness so much and don't want guarantees. If you care use [try-catch-core][].
The npm package try-catch-callback receives a total of 349 weekly downloads. As such, try-catch-callback popularity was classified as not popular.
We found that try-catch-callback 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.

Company News
Socket won two 2026 Reppy Awards from RepVue, ranking in the top 5% of all sales orgs. AE Alexandra Lister shares what it's like to grow a sales career here.

Security News
NIST will stop enriching most CVEs under a new risk-based model, narrowing the NVD's scope as vulnerability submissions continue to surge.

Company News
/Security News
Socket is an initial recipient of OpenAI's Cybersecurity Grant Program, which commits $10M in API credits to defenders securing open source software.