README
Function Name
Returns the name of a function.
Installation
$ npm install utils-function-name
Usage
var fname = require( 'utils-function-name' );
fname( fcn )
Returns the name of a function
.
var name = fname( Math.sqrt )
// returns 'sqrt'
If provided an anonymous function
, the function returns anonymous
.
var name = fname( function(){} );
// returns 'anonymous'
If provided a value which is not a function
, the function throws a TypeError
.
try {
// throws...
var name = fname( 'beep' );
} catch ( err ) {
console.error( err );
}
Examples
var fname = require( 'utils-function-name' );
console.log( fname( Math.sqrt ) );
// returns 'sqrt'
console.log( fname( Float64Array ) );
// returns 'Float64Array'
console.log( fname( Buffer ) );
// returns 'Buffer'
console.log( fname( Date ) );
// returns 'Date'
console.log( fname( String ) );
// returns 'String'
console.log( fname( Boolean ) );
// returns 'Boolean'
console.log( fname( Function ) );
// returns 'Function'
console.log( fname( Number ) );
// returns 'Number'
console.log( fname( function(){} ) );
// returns 'anonymous'
To run the example code from the top-level application directory,
$ node ./examples/index.js
Tests
Unit
Unit tests use the Mocha test framework with Chai assertions. To run the tests, execute the following command in the top-level application directory:
$ make test
All new feature development should have corresponding unit tests to validate correct functionality.
Test Coverage
This repository uses Istanbul as its code coverage tool. To generate a test coverage report, execute the following command in the top-level application directory:
$ make test-cov
Istanbul creates a ./reports/coverage
directory. To access an HTML version of the report,
$ make view-cov
License
Copyright
Copyright © 2015. Athan Reines.