voca
Version:
The ultimate JavaScript string library
41 lines (34 loc) • 1.05 kB
JavaScript
;
var is_nil = require('./internal/is_nil.js');
require('./is_string.js');
var coerce_to_string = require('./internal/coerce_to_string.js');
var to_integer = require('./internal/to_integer.js');
/**
* Extracts the first `length` characters from `subject`.
*
* @function first
* @static
* @since 1.0.0
* @memberOf Chop
* @param {string} [subject=''] The string to extract from.
* @param {int} [length=1] The number of characters to extract.
* @return {string} Returns the first characters string.
* @example
* v.first('helicopter');
* // => 'h'
*
* v.first('vehicle', 2);
* // => 've'
*
* v.first('car', 5);
* // => 'car'
*/
function first(subject, length) {
var subjectString = coerce_to_string.coerceToString(subject);
var lengthInt = is_nil.isNil(length) ? 1 : to_integer.clipNumber(to_integer.toInteger(length), 0, to_integer.MAX_SAFE_INTEGER);
if (subjectString.length <= lengthInt) {
return subjectString;
}
return subjectString.substr(0, lengthInt);
}
module.exports = first;