Sha256: 93db1d72a0d5b874705b6b55cbfc7ba8bfae7c39bcc31656d5493a4ca06d13fe
Contents?: true
Size: 899 Bytes
Versions: 82
Compression:
Stored size: 899 Bytes
Contents
var $export = require('./_export'); var defined = require('./_defined'); var fails = require('./_fails'); var spaces = require('./_string-ws'); var space = '[' + spaces + ']'; var non = '\u200b\u0085'; var ltrim = RegExp('^' + space + space + '*'); var rtrim = RegExp(space + space + '*$'); var exporter = function (KEY, exec, ALIAS) { var exp = {}; var FORCE = fails(function () { return !!spaces[KEY]() || non[KEY]() != non; }); var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY]; if (ALIAS) exp[ALIAS] = fn; $export($export.P + $export.F * FORCE, 'String', exp); }; // 1 -> String#trimLeft // 2 -> String#trimRight // 3 -> String#trim var trim = exporter.trim = function (string, TYPE) { string = String(defined(string)); if (TYPE & 1) string = string.replace(ltrim, ''); if (TYPE & 2) string = string.replace(rtrim, ''); return string; }; module.exports = exporter;
Version data entries
82 entries across 38 versions & 8 rubygems