is-callback-function

1.0.1 • Public • Published

is-callback-function npmjs.com The MIT License npm downloads

Returns true if function is a callback. Checks its name is one of common-callback-names - callback, cb, cb_, callback_, next, done, they can be customized, these are default.

code climate standard code style travis build status coverage status dependency status

Install

npm i is-callback-function --save

Usage

For more use-cases see the tests

const isCallbackFunction = require('is-callback-function')

isCallbackFunction

Check if given fn is callback function or not. Notice that "async" functions are not is-callback-function, they are is-async-function - it may be consfusing, but they are different.

Params

  • fn {Function}
  • names {Array}
  • returns {Boolean}

Example

var fs = require('fs')
var isCallback = require('is-callback-function')
var isAsync = require('is-async-function')
 
console.log(isCallback(fs.readFile)) // => false
console.log(isAsync(fs.readFile)) // => true
 
console.log(isCallback(function (foo, bar, cb) {})) // => false
console.log(isAsync(function (foo, bar, cb) {})) // => true
 
console.log(isCallback(function callback (foo, bar) {})) // => true
console.log(isAsync(function callback (foo, bar) {})) // => false
 
console.log(isCallback(function named (foo, cb) {})) // => false
console.log(isAsync(function named (foo, cb) {})) // => true
 
console.log(isCallback(function named (foo) {})) // => false
console.log(isAsync(function named (foo) {})) // => false
 
console.log(isCallback(function foo (bar) {}, ['baz', 'foo', 'qux'])) // => true
console.log(isAsync(function foo (bar, qux) {}, ['baz', 'qux', 'aaa'])) // => true
console.log(isAsync(function foo (bar, qux) {}, ['baz', 'aaa'])) // => false

Whaaat?!

Need clarification? Both signatures are equal.

  • is-callback-function - checks the name of given function
  • is-async-function - checks the arguments names of given function

Related

Contributing

Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.
But before doing anything, please read the CONTRIBUTING.md guidelines.

Charlike Make Reagent new message to charlike freenode #charlike

tunnckoCore.tk keybase tunnckoCore tunnckoCore npm tunnckoCore twitter tunnckoCore github

Package Sidebar

Install

npm i is-callback-function

Weekly Downloads

5

Version

1.0.1

License

MIT

Last publish

Collaborators

  • vanchoy
  • tunnckocore