2.5 KiB
		
	
	
	
	
	
	
	
			
		
		
	
	
			2.5 KiB
		
	
	
	
	
	
	
	
id, title, isRequired, challengeType
| id | title | isRequired | challengeType | 
|---|---|---|---|
| a6b0bb188d873cb2c8729495 | Convert HTML Entities | true | 5 | 
Description
&, <, >, " (double quote), and ' (apostrophe), in a string to their corresponding HTML entities.
Remember to use Read-Search-Ask if you get stuck. Try to pair program. Write your own code.
Instructions
Tests
tests:
  - text: <code>convertHTML("Dolce & Gabbana")</code> should return <code>Dolce &amp; Gabbana</code>.
    testString: assert.match(convertHTML("Dolce & Gabbana"), /Dolce & Gabbana/);
  - text: <code>convertHTML("Hamburgers < Pizza < Tacos")</code> should return <code>Hamburgers &lt; Pizza &lt; Tacos</code>.
    testString: assert.match(convertHTML("Hamburgers < Pizza < Tacos"), /Hamburgers < Pizza < Tacos/);
  - text: <code>convertHTML("Sixty > twelve")</code> should return <code>Sixty &gt; twelve</code>.
    testString: assert.match(convertHTML("Sixty > twelve"), /Sixty > twelve/);
  - text: <code>convertHTML('Stuff in "quotation marks"')</code> should return <code>Stuff in &quot;quotation marks&quot;</code>.
    testString: assert.match(convertHTML('Stuff in "quotation marks"'), /Stuff in "quotation marks"/);
  - text: <code>convertHTML("Schindler's List")</code> should return <code>Schindler&apos;s List</code>.
    testString: assert.match(convertHTML("Schindler's List"), /Schindler's List/);
  - text: <code>convertHTML("<>")</code> should return <code>&lt;&gt;</code>.
    testString: assert.match(convertHTML('<>'), /<>/);
  - text: <code>convertHTML("abc")</code> should return <code>abc</code>.
    testString: assert.strictEqual(convertHTML('abc'), 'abc');
Challenge Seed
function convertHTML(str) {
  // :)
  return str;
}
convertHTML("Dolce & Gabbana");
Solution
var MAP = { '&': '&',
            '<': '<',
            '>': '>',
            '"': '"',
            "'": '''};
function convertHTML(str) {
  return str.replace(/[&<>"']/g, function(c) {
    return MAP[c];
  });
}