# assert-is-function-x

> If isFunction(callbackfn) is false, throw a TypeError exception.

Latest version **3.1.2** (published 2019-08-28) · MIT license · 0 weekly downloads

## Install

```sh
npm install assert-is-function-x
pnpm add assert-is-function-x
yarn add assert-is-function-x
bun add assert-is-function-x
```

## Health

**Score 20/100 (F)** — status: abandoned.

Positive: esm support; no vulnerabilities.

Warnings: low downloads; no types.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 3.1.2 |
| Published | 2019-08-28 |
| First published | 2016-01-21 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | ESM + CommonJS |
| Node | >=8.11.4 |
| Dependencies | 3 |
| Unpacked size | 184.9 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 1 |
| Author | Graham Fairweather |
| Maintainers | xotic750 |
| Keywords | assertIsFunction, module, javascript, nodejs, browser |

## Links

- npm: https://www.npmjs.com/package/assert-is-function-x
- Repository: https://github.com/Xotic750/assert-is-function-x
- Issues: https://github.com/Xotic750/assert-is-function-x/issues
- npm.io page: https://npm.io/package/assert-is-function-x

## Dependencies (3)

- [is-function-x](https://npm.io/package/is-function-x.md) ^4.1.2
- [is-primitive-x](https://npm.io/package/is-primitive-x.md) ^1.0.1
- [to-string-symbols-supported-x](https://npm.io/package/to-string-symbols-supported-x.md) ^2.1.2

## Alternatives

- [@opentelemetry/exporter-zipkin](https://npm.io/package/@opentelemetry/exporter-zipkin.md) — 14.8M weekly downloads
- [pusher-js](https://npm.io/package/pusher-js.md) — 2.0M weekly downloads
- [browserify](https://npm.io/package/browserify.md) — 1.7M weekly downloads
- [sqs-consumer](https://npm.io/package/sqs-consumer.md) — 1.7M weekly downloads
- [@sanity/eventsource](https://npm.io/package/@sanity/eventsource.md) — 930.8K weekly downloads

## Recent versions

- 3.1.2 (latest) — 2019-08-28
- 3.1.1 — 2019-08-20
- 3.1.0 — 2019-08-14
- 3.0.19 — 2019-07-31
- 3.0.18 — 2019-07-27
- 3.0.17 — 2019-07-27
- 3.0.16 — 2019-07-26
- 3.0.15 — 2019-07-25
- 3.0.14 — 2019-07-24
- 3.0.13 — 2019-07-24
- 3.0.12 — 2019-07-22
- 3.0.11 — 2019-07-21
- 3.0.10 — 2019-07-19
- 3.0.9 — 2019-07-18
- 3.0.8 — 2019-07-17
- … 23 more at https://npm.io/package/assert-is-function-x/versions

## README

<a
  href="https://travis-ci.org/Xotic750/assert-is-function-x"
  title="Travis status">
<img
  src="https://travis-ci.org/Xotic750/assert-is-function-x.svg?branch=master"
  alt="Travis status" height="18">
</a>
<a
  href="https://david-dm.org/Xotic750/assert-is-function-x"
  title="Dependency status">
<img src="https://david-dm.org/Xotic750/assert-is-function-x/status.svg"
  alt="Dependency status" height="18"/>
</a>
<a
  href="https://david-dm.org/Xotic750/assert-is-function-x?type=dev"
  title="devDependency status">
<img src="https://david-dm.org/Xotic750/assert-is-function-x/dev-status.svg"
  alt="devDependency status" height="18"/>
</a>
<a
  href="https://badge.fury.io/js/assert-is-function-x"
  title="npm version">
<img src="https://badge.fury.io/js/assert-is-function-x.svg"
  alt="npm version" height="18">
</a>
<a
  href="https://www.jsdelivr.com/package/npm/assert-is-function-x"
  title="jsDelivr hits">
<img src="https://data.jsdelivr.com/v1/package/npm/assert-is-function-x/badge?style=rounded"
  alt="jsDelivr hits" height="18">
</a>
<a
  href="https://bettercodehub.com/results/Xotic750/assert-is-function-x"
  title="bettercodehub score">
<img src="https://bettercodehub.com/edge/badge/Xotic750/assert-is-function-x?branch=master"
  alt="bettercodehub score" height="18">
</a>
<a
  href="https://coveralls.io/github/Xotic750/assert-is-function-x?branch=master"
  title="Coverage Status">
<img src="https://coveralls.io/repos/github/Xotic750/assert-is-function-x/badge.svg?branch=master"
  alt="Coverage Status" height="18">
</a>

<a name="module_assert-is-function-x"></a>

## assert-is-function-x

If isFunction(callbackfn) is false, throw a TypeError exception.

<a name="exp_module_assert-is-function-x--module.exports"></a>

### `module.exports(callback)` ⇒ <code>\*</code> ⏏

Tests `callback` to see if it is a function, throws a `TypeError` if it is
not. Otherwise returns the `callback`.

**Kind**: Exported function  
**Returns**: <code>\*</code> - Returns `callback` if it is function.  
**Throws**:

- <code>TypeError</code> Throws if `callback` is not a function.

| Param     | Type                | Description                   |
| --------- | ------------------- | ----------------------------- |
| callback  | <code>\*</code>     | The argument to be tested.    |
| [message] | <code>string</code> | Optional alternative message. |

**Example**

```js
import assertIsFunction from 'assert-is-function-x';

const primitive = true;
const mySymbol = Symbol('mySymbol');
const symObj = Object(mySymbol);
const object = {};
const fn = function fn() {};

assertIsFunction(primitive); // TypeError 'true is not a function'.
assertIsFunction(object); // TypeError '#<Object> is not a function'.
assertIsFunction(mySymbol); // TypeError 'Symbol(mySymbol) is not a function'.
assertIsFunction(symObj); // TypeError '#<Object> is not a function'.
console.log(assertIsFunction(fn)); // Returns fn.
```

---
_Source: https://npm.io/package/assert-is-function-x · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
