Bump to v3.0.0.

This commit is contained in:
John-David Dalton
2014-12-31 21:48:44 -06:00
committed by jdalton
commit f9606b394c
349 changed files with 23038 additions and 0 deletions

31
utility/attempt.js Normal file
View File

@@ -0,0 +1,31 @@
var isError = require('../lang/isError');
/**
* Attempts to invoke `func`, returning either the result or the caught
* error object.
*
* @static
* @memberOf _
* @category Utility
* @param {*} func The function to attempt.
* @returns {*} Returns the `func` result or error object.
* @example
*
* // avoid throwing errors for invalid selectors
* var elements = _.attempt(function() {
* return document.querySelectorAll(selector);
* });
*
* if (_.isError(elements)) {
* elements = [];
* }
*/
function attempt(func) {
try {
return func();
} catch(e) {
return isError(e) ? e : Error(e);
}
}
module.exports = attempt;