function chain(fnAfter, fnBefore) {
			if (!fnBefore) {
				return fnAfter;
			}

			function formatter() {
				return fnAfter.call(this, fnBefore.apply(this, arguments));
			}
			return formatter;
		}
function chain(fnAfter, fnBefore) {
			if (!fnBefore) {
				return fnAfter;
			}

			function formatter() {
				return fnAfter.call(this, fnBefore.apply(this, arguments));
			}
			return formatter;
		}
function chain ( fnAfter , fnBefore ) { if ( ! fnBefore ) { return fnAfter ; } function formatter ( ) { return fnAfter . call ( this , fnBefore . apply ( this , arguments ) ) ; } return formatter ; }
Returns a function representing the composition <code>fnAfter</code> after
<code>fnBefore</code>.

@param {function} fnAfter
the second function, taking a single argument
@param {function} [fnBefore]
the optional first function, taking multiple arguments
@returns {function}
the composition <code>fnAfter</code> after <code>fnBefore</code>
Returns a function representing the composition <code > fnAfter< / code > after <code > fnBefore< / code > .
Chain a function to a function