inspect-function
Inspects a function and returns informations about it (e.g. name, parameters names, parameters and default values, signature).
Useful when creating automated tasks, e.g., docs generations.
Installation
npm install inspect-function
Usage
inspectFunction(fn, name);
const inspectFunction = require('inspect-function');
const testFunction = (a = 'z', b = [1,2,3], c, {d,e: {f}, g} = {}) => console.log('noop');
const result = inspectFunction(testFunction);
{
"name": "testFunction",
"signature": "testFunction(a = 'z', b = [1,2,3], c, {d,e: {f}, g} = {});",
"parameters": [
{
"parameter": "a",
"defaultValue": "z",
"declaration": "a = 'z'"
},
{
"parameter": "b",
"defaultValue": "[1,2,3]",
"declaration": "b = [1,2,3]"
},
{
"parameter": "c",
"declaration": "c"
},
{
"parameter": "{d,e: {f}, g}",
"defaultValue": "{}",
"expectsDestructuring": true,
"declaration": "{d,e: {f}, g} = {}",
"destructuredParameters": [
{
"parameter": "d",
"declaration": "d"
},
{
"parameter": "f",
"declaration": "f"
},
{
"parameter": "g",
"declaration": "g"
}
]
}
],
"parametersNames": [
"a",
"b",
"c",
"d",
"f",
"g"
]
}