Git Product home page Git Product logo

is-callback-function's Introduction

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

is-callback-function's People

Contributors

tunnckocore avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar

is-callback-function's Issues

fix readme example

var fs = require('fs')
var isCallback = require('is-callback-function')
var isAsync    = require('is-callback-function')

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.