attempts
v1.1.0
Published
Try func with different args.
Downloads
176
Readme
attempts 
Try func with different args.
Methods
attempts.sync(values, fn)
⇒ result /undefined
Invokefn
withvalues[n]
one by one, until get a truthy return value.attempts.async(values, fn)
⇒Promise
(resolved with result / rejected withundefined
)
Invokefn
withvalues[n]
one by one, until get a truthy return value or resolved Promise.
NOTE: Exceptions within fn
will be catched & treated as a falsy return, handy for
some Node.js API (fs.accessSync
, fs.statSync
, etc.) throw errors regularly.
Example
Get availiable config:
const attempts = require('attempts')
const readConfig = filename => require(filename)
const possibleConfigs = [
'./config.json',
'./config.default.json'
]
const config = attempts.sync(possibleConfigs, readConfig)
License
MIT © Amio