diff --git a/test/utility.js b/test/utility.js index 976b3b996..f1f0bfb56 100644 --- a/test/utility.js +++ b/test/utility.js @@ -41,6 +41,11 @@ $(document).ready(function() { equals(_('champ').myReverse(), 'pmahc', 'mixed in a function to the OOP wrapper'); }); + test("utility: _.escape", function() { + equals(_.escape("Curly & Moe"), "Curly & Moe"); + equals(_.escape("Curly & Moe"), "Curly &amp; Moe"); + }); + test("utility: template", function() { var basicTemplate = _.template("<%= thing %> is gettin' on my noives!"); var result = basicTemplate({thing : 'This'}); diff --git a/underscore.js b/underscore.js index 88f8dd93e..3737ddc1b 100644 --- a/underscore.js +++ b/underscore.js @@ -849,7 +849,7 @@ // Escape a string for HTML interpolation. _.escape = function(string) { - return (''+string).replace(/&(?!\w+;|#\d+;|#x[\da-f]+;)/gi, '&').replace(//g, '>').replace(/"/g, '"').replace(/'/g, ''').replace(/\//g,'/'); + return (''+string).replace(/&/g, '&').replace(//g, '>').replace(/"/g, '"').replace(/'/g, ''').replace(/\//g,'/'); }; // Add your own custom functions to the Underscore object, ensuring that