Socket
Socket
Sign inDemoInstall

underscore.string

Package Overview
Dependencies
Maintainers
1
Versions
32
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

underscore.string - npm Package Compare versions

Comparing version 1.1.4 to 1.1.5

19

dist/underscore.string.min.js

@@ -1,9 +0,10 @@

(function(){function g(b,a){for(var c=[];a>0;c[--a]=b);return c.join("")}function f(b){if(b)return d.escapeRegExp(b);return"\\s"}var i=String.prototype.trim,d={isBlank:function(b){return!!b.match(/^\s*$/)},capitalize:function(b){return b.charAt(0).toUpperCase()+b.substring(1).toLowerCase()},chop:function(b,a){a=a||b.length;for(var c=[],d=0;d<b.length;)c.push(b.slice(d,d+a)),d+=a;return c},clean:function(b){return d.strip(b.replace(/\s+/g," "))},count:function(b,a){for(var c=0,d,e=0;e<b.length;)d=
b.indexOf(a,e),d>=0&&c++,e=e+(d>=0?d:0)+a.length;return c},chars:function(b){return b.split("")},escapeHTML:function(b){return String(b||"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")},unescapeHTML:function(b){return String(b||"").replace(/&amp;/g,"&").replace(/&lt;/g,"<").replace(/&gt;/g,">")},escapeRegExp:function(b){return String(b||"").replace(/([-.*+?^${}()|[\]\/\\])/g,"\\$1")},insert:function(b,a,c){b=b.split("");b.splice(a,0,c);return b.join("")},includes:function(b,a){return b.indexOf(a)!==
-1},join:function(b){b=String(b);for(var a="",c=1;c<arguments.length;c+=1)a+=String(arguments[c]),c!==arguments.length-1&&(a+=b);return a},lines:function(b){return b.split("\n")},splice:function(b,a,c,d){b=b.split("");b.splice(a,c,d);return b.join("")},startsWith:function(b,a){return b.length>=a.length&&b.substring(0,a.length)===a},endsWith:function(b,a){return b.length>=a.length&&b.substring(b.length-a.length)===a},succ:function(b){var a=b.split("");a.splice(b.length-1,1,String.fromCharCode(b.charCodeAt(b.length-
1)+1));return a.join("")},titleize:function(b){b=b.split(" ");for(var a,c=0;c<b.length;c++)a=b[c].split(""),typeof a[0]!=="undefined"&&(a[0]=a[0].toUpperCase()),c+1===b.length?b[c]=a.join(""):b[c]=a.join("")+" ";return b.join("")},camelize:function(b){return d.trim(b).replace(/(\-|_|\s)+(.)?/g,function(a,b,d){return d?d.toUpperCase():""})},underscored:function(b){return d.trim(b).replace(/([a-z\d])([A-Z]+)/g,"$1_$2").replace(/\-|\s+/g,"_").toLowerCase()},dasherize:function(b){return d.trim(b).replace(/([a-z\d])([A-Z]+)/g,
"$1-$2").replace(/^([A-Z]+)/,"-$1").replace(/\_|\s+/g,"-").toLowerCase()},trim:function(b,a){if(!a&&i)return i.call(b);a=f(a);return b.replace(RegExp("^["+a+"]+|["+a+"]+$","g"),"")},ltrim:function(b,a){a=f(a);return b.replace(RegExp("^["+a+"]+","g"),"")},rtrim:function(b,a){a=f(a);return b.replace(RegExp("["+a+"]+$","g"),"")},truncate:function(b,a,c){return b.slice(0,a)+(c||"...")},words:function(b,a){return b.split(a||" ")},pad:function(b,a,c,d){var e="";e=0;c?c.length>1&&(c=c[0]):c=" ";switch(d){case "right":e=
a-b.length;e=g(c,e);b+=e;break;case "both":e=a-b.length;e={left:g(c,Math.ceil(e/2)),right:g(c,Math.floor(e/2))};b=e.left+b+e.right;break;default:e=a-b.length,e=g(c,e),b=e+b}return b},lpad:function(b,a,c){return d.pad(b,a,c)},rpad:function(b,a,c){return d.pad(b,a,c,"right")},lrpad:function(b,a,c){return d.pad(b,a,c,"both")},sprintf:function(){for(var b=0,a,c=arguments[b++],d=[],e,h,f;c;){if(e=/^[^\x25]+/.exec(c))d.push(e[0]);else if(e=/^\x25{2}/.exec(c))d.push("%");else if(e=/^\x25(?:(\d+)\$)?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-fosuxX])/.exec(c)){if((a=
arguments[e[1]||b++])==null||a==void 0)throw"Too few arguments.";if(/[^s]/.test(e[7])&&typeof a!="number")throw"Expecting number but found "+typeof a;switch(e[7]){case "b":a=a.toString(2);break;case "c":a=String.fromCharCode(a);break;case "d":a=parseInt(a);break;case "e":a=e[6]?a.toExponential(e[6]):a.toExponential();break;case "f":a=e[6]?parseFloat(a).toFixed(e[6]):parseFloat(a);break;case "o":a=a.toString(8);break;case "s":a=(a=String(a))&&e[6]?a.substring(0,e[6]):a;break;case "u":a=Math.abs(a);
break;case "x":a=a.toString(16);break;case "X":a=a.toString(16).toUpperCase()}a=/[def]/.test(e[7])&&e[2]&&a>=0?"+"+a:a;h=e[3]?e[3]=="0"?"0":e[3].charAt(1):" ";f=e[5]-String(a).length-0;h=e[5]?g(h,f):"";d.push(""+(e[4]?a+h:h+a))}else throw"Huh ?!";c=c.substring(e[0].length)}return d.join("")}};d.strip=d.trim;d.lstrip=d.ltrim;d.rstrip=d.rtrim;d.center=d.lrpad;d.ljust=d.lpad;d.rjust=d.rpad;typeof window==="undefined"&&typeof module!=="undefined"?module.exports=d:typeof this._!=="undefined"?this._.mixin(d):
this._=d})();
(function(){function g(a,b){for(var c=[];b>0;c[--b]=a);return c.join("")}function f(a){if(a)return d.escapeRegExp(a);return"\\s"}var i=String.prototype.trim,d={isBlank:function(a){return!!a.match(/^\s*$/)},capitalize:function(a){return a.charAt(0).toUpperCase()+a.substring(1).toLowerCase()},chop:function(a,b){b=b||a.length;for(var c=[],d=0;d<a.length;)c.push(a.slice(d,d+b)),d+=b;return c},clean:function(a){return d.strip(a.replace(/\s+/g," "))},count:function(a,b){for(var c=0,d,e=0;e<a.length;)d=
a.indexOf(b,e),d>=0&&c++,e=e+(d>=0?d:0)+b.length;return c},chars:function(a){return a.split("")},escapeHTML:function(a){return String(a||"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&apos;")},unescapeHTML:function(a){return String(a||"").replace(/&amp;/g,"&").replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&quot;/g,'"').replace(/&apos;/g,"'")},escapeRegExp:function(a){return String(a||"").replace(/([-.*+?^${}()|[\]\/\\])/g,"\\$1")},insert:function(a,
b,c){a=a.split("");a.splice(b,0,c);return a.join("")},includes:function(a,b){return a.indexOf(b)!==-1},join:function(a){a=String(a);for(var b="",c=1;c<arguments.length;c+=1)b+=String(arguments[c]),c!==arguments.length-1&&(b+=a);return b},lines:function(a){return a.split("\n")},splice:function(a,b,c,d){a=a.split("");a.splice(b,c,d);return a.join("")},startsWith:function(a,b){return a.length>=b.length&&a.substring(0,b.length)===b},endsWith:function(a,b){return a.length>=b.length&&a.substring(a.length-
b.length)===b},succ:function(a){var b=a.split("");b.splice(a.length-1,1,String.fromCharCode(a.charCodeAt(a.length-1)+1));return b.join("")},titleize:function(a){a=a.split(" ");for(var b,c=0;c<a.length;c++)b=a[c].split(""),typeof b[0]!=="undefined"&&(b[0]=b[0].toUpperCase()),c+1===a.length?a[c]=b.join(""):a[c]=b.join("")+" ";return a.join("")},camelize:function(a){return d.trim(a).replace(/(\-|_|\s)+(.)?/g,function(a,c,d){return d?d.toUpperCase():""})},underscored:function(a){return d.trim(a).replace(/([a-z\d])([A-Z]+)/g,
"$1_$2").replace(/\-|\s+/g,"_").toLowerCase()},dasherize:function(a){return d.trim(a).replace(/([a-z\d])([A-Z]+)/g,"$1-$2").replace(/^([A-Z]+)/,"-$1").replace(/\_|\s+/g,"-").toLowerCase()},trim:function(a,b){if(!b&&i)return i.call(a);b=f(b);return a.replace(RegExp("^["+b+"]+|["+b+"]+$","g"),"")},ltrim:function(a,b){b=f(b);return a.replace(RegExp("^["+b+"]+","g"),"")},rtrim:function(a,b){b=f(b);return a.replace(RegExp("["+b+"]+$","g"),"")},truncate:function(a,b,c){return a.slice(0,b)+(c||"...")},words:function(a,
b){return a.split(b||" ")},pad:function(a,b,c,d){var e="";e=0;c?c.length>1&&(c=c[0]):c=" ";switch(d){case "right":e=b-a.length;e=g(c,e);a+=e;break;case "both":e=b-a.length;e={left:g(c,Math.ceil(e/2)),right:g(c,Math.floor(e/2))};a=e.left+a+e.right;break;default:e=b-a.length,e=g(c,e),a=e+a}return a},lpad:function(a,b,c){return d.pad(a,b,c)},rpad:function(a,b,c){return d.pad(a,b,c,"right")},lrpad:function(a,b,c){return d.pad(a,b,c,"both")},sprintf:function(){for(var a=0,b,c=arguments[a++],d=[],e,h,f;c;){if(e=
/^[^\x25]+/.exec(c))d.push(e[0]);else if(e=/^\x25{2}/.exec(c))d.push("%");else if(e=/^\x25(?:(\d+)\$)?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-fosuxX])/.exec(c)){if((b=arguments[e[1]||a++])==null||b==void 0)throw"Too few arguments.";if(/[^s]/.test(e[7])&&typeof b!="number")throw"Expecting number but found "+typeof b;switch(e[7]){case "b":b=b.toString(2);break;case "c":b=String.fromCharCode(b);break;case "d":b=parseInt(b);break;case "e":b=e[6]?b.toExponential(e[6]):b.toExponential();break;case "f":b=
e[6]?parseFloat(b).toFixed(e[6]):parseFloat(b);break;case "o":b=b.toString(8);break;case "s":b=(b=String(b))&&e[6]?b.substring(0,e[6]):b;break;case "u":b=Math.abs(b);break;case "x":b=b.toString(16);break;case "X":b=b.toString(16).toUpperCase()}b=/[def]/.test(e[7])&&e[2]&&b>=0?"+"+b:b;h=e[3]?e[3]=="0"?"0":e[3].charAt(1):" ";f=e[5]-String(b).length-0;h=e[5]?g(h,f):"";d.push(""+(e[4]?b+h:h+b))}else throw"Huh ?!";c=c.substring(e[0].length)}return d.join("")},toNumber:function(a,b){return(a*1||0).toFixed(b*
1||0)*1||0},strRight:function(a,b){var c=!b?-1:a.indexOf(b);return c!=-1?a.slice(c+b.length,a.length):a},strRightBack:function(a,b){var c=!b?-1:a.lastIndexOf(b);return c!=-1?a.slice(c+b.length,a.length):a},strLeft:function(a,b){var c=!b?-1:a.indexOf(b);return c!=-1?a.slice(0,c):a},strLeftBack:function(a,b){var c=a.lastIndexOf(b);return c!=-1?a.slice(0,c):a}};d.strip=d.trim;d.lstrip=d.ltrim;d.rstrip=d.rtrim;d.center=d.lrpad;d.ljust=d.lpad;d.rjust=d.rpad;typeof window==="undefined"&&typeof module!==
"undefined"?module.exports=d:typeof this._!=="undefined"?this._.mixin(d):this._=d})();

@@ -7,3 +7,3 @@ // Underscore.string

// Version 1.1.4
// Version 1.1.5

@@ -18,2 +18,4 @@ (function(){

var parseNumber = function(source) { return source * 1 || 0; };
function str_repeat(i, m) {

@@ -70,7 +72,9 @@ for (var o = []; m > 0; o[--m] = i);

escapeHTML: function(str) {
return String(str||'').replace(/&/g,'&amp;').replace(/</g,'&lt;').replace(/>/g,'&gt;');
return String(str||'').replace(/&/g,'&amp;').replace(/</g,'&lt;').replace(/>/g,'&gt;')
.replace(/"/g, '&quot;').replace(/'/g, "&apos;");
},
unescapeHTML: function(str) {
return String(str||'').replace(/&amp;/g, '&').replace(/&lt;/g, '<').replace(/&gt;/g, '>');
return String(str||'').replace(/&amp;/g, '&').replace(/&lt;/g, '<').replace(/&gt;/g, '>')
.replace(/&quot;/g, '"').replace(/&apos;/g, "'");
},

@@ -279,5 +283,30 @@

return o.join('');
}
}
},
toNumber: function(str, decimals) {
return parseNumber(parseNumber(str).toFixed(parseNumber(decimals)));
},
strRight: function(sourceStr, sep){
var pos = (!sep) ? -1 : sourceStr.indexOf(sep);
return (pos != -1) ? sourceStr.slice(pos+sep.length, sourceStr.length) : sourceStr;
},
strRightBack: function(sourceStr, sep){
var pos = (!sep) ? -1 : sourceStr.lastIndexOf(sep);
return (pos != -1) ? sourceStr.slice(pos+sep.length, sourceStr.length) : sourceStr;
},
strLeft: function(sourceStr, sep){
var pos = (!sep) ? -1 : sourceStr.indexOf(sep);
return (pos != -1) ? sourceStr.slice(0, pos) : sourceStr;
},
strLeftBack: function(sourceStr, sep){
var pos = sourceStr.lastIndexOf(sep);
return (pos != -1) ? sourceStr.slice(0, pos) : sourceStr;
}
};
// Aliases

@@ -288,5 +317,5 @@

_s.rstrip = _s.rtrim;
_s.center = _s.lrpad
_s.ljust = _s.lpad
_s.rjust = _s.rpad
_s.center = _s.lrpad;
_s.ljust = _s.lpad;
_s.rjust = _s.rpad;

@@ -293,0 +322,0 @@ // CommonJS module is defined

{
"name": "underscore.string",
"version": "1.1.4",
"version": "1.1.5",
"description": "String manipulation extensions for Underscore.js javascript library.",

@@ -5,0 +5,0 @@ "homepage": "https://github.com/edtsech/underscore.string",

@@ -106,2 +106,22 @@ (function() {

JSLitmus.test('toNumber', function(){
_('10.232323').toNumber(2);
});
JSLitmus.test('strRight', function(){
_('aaa_bbb_ccc').strRight('_');
});
JSLitmus.test('strRightBack', function(){
_('aaa_bbb_ccc').strRightBack('_');
});
JSLitmus.test('strLeft', function(){
_('aaa_bbb_ccc').strLeft('_');
});
JSLitmus.test('strLeftBack', function(){
_('aaa_bbb_ccc').strLeftBack('_');
});
})();

@@ -178,3 +178,4 @@ $(document).ready(function() {

test('String: escapeHTML', function(){
equals(_('<div>Blah blah blah</div>').escapeHTML(), '&lt;div&gt;Blah blah blah&lt;/div&gt;');
equals(_('<div>Blah & "blah" & \'blah\'</div>').escapeHTML(),
'&lt;div&gt;Blah &amp; &quot;blah&quot; &amp; &apos;blah&apos;&lt;/div&gt;');
equals(_(5).escapeHTML(), '5');

@@ -185,3 +186,4 @@ equals(_(undefined).escapeHTML(), '');

test('String: unescapeHTML', function(){
equals(_('&lt;div&gt;Blah blah blah&lt;/div&gt;').unescapeHTML(), '<div>Blah blah blah</div>');
equals(_('&lt;div&gt;Blah &amp; &quot;blah&quot; &amp; &apos;blah&apos;&lt;/div&gt;').unescapeHTML(),
'<div>Blah & "blah" & \'blah\'</div>');
equals(_(5).unescapeHTML(), '5');

@@ -238,2 +240,43 @@ equals(_(undefined).unescapeHTML(), '');

test('String: toNumber', function() {
equals(_("not a number").toNumber(), 0);
equals(_("2.345").toNumber(), 2);
equals(_("2.345").toNumber(NaN), 2);
equals(_("2.345").toNumber(2), 2.35);
equals(_("2.344").toNumber(2), 2.34);
equals(_("2").toNumber(2), 2.00);
});
test('String: strRight', function() {
equals(_("This_is_a_test_string").strRight("_"), "is_a_test_string");
equals(_("This_is_a_test_string").strRight("string"), "");
equals(_("This_is_a_test_string").strRight(), "This_is_a_test_string");
equals(_("This_is_a_test_string").strRight(""), "This_is_a_test_string");
equals(_("This_is_a_test_string").strRight("-"), "This_is_a_test_string");
});
test('String: strRightBack', function() {
equals(_("This_is_a_test_string").strRightBack("_"), "string");
equals(_("This_is_a_test_string").strRightBack("string"), "");
equals(_("This_is_a_test_string").strRightBack(), "This_is_a_test_string");
equals(_("This_is_a_test_string").strRightBack(""), "This_is_a_test_string");
equals(_("This_is_a_test_string").strRightBack("-"), "This_is_a_test_string");
});
test('String: strLeft', function() {
equals(_("This_is_a_test_string").strLeft("_"), "This");
equals(_("This_is_a_test_string").strLeft("This"), "");
equals(_("This_is_a_test_string").strLeft(), "This_is_a_test_string");
equals(_("This_is_a_test_string").strLeft(""), "This_is_a_test_string");
equals(_("This_is_a_test_string").strLeft("-"), "This_is_a_test_string");
});
test('String: strLeftBack', function() {
equals(_("This_is_a_test_string").strLeftBack("_"), "This_is_a_test");
equals(_("This_is_a_test_string").strLeftBack("This"), "");
equals(_("This_is_a_test_string").strLeftBack(), "This_is_a_test_string");
equals(_("This_is_a_test_string").strLeftBack(""), "This_is_a_test_string");
equals(_("This_is_a_test_string").strLeftBack("-"), "This_is_a_test_string");
});
});

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc