The takeaway is in the JS!
throw new Error('Intentional Error Thrown');
View live at: https://codepen.io/popdemtech/pen/VwXGJQQ?editors=1010
The takeaway is in the JS!
throw new Error('Intentional Error Thrown');
View live at: https://codepen.io/popdemtech/pen/VwXGJQQ?editors=1010
| <div class="controls"> | |
| <button id="script-error" type="button">throw new Error('Intentional Error Thrown');</button> | |
| <button id="whateva-error" type="button">throw new Error('Whateva I do what I want');</button> | |
| <button id="random-error" type="button">throw new Error(`One time, I saw a ${noun} ${verb}.`);</button> | |
| </div> | |
| <div class="event-log"> | |
| <label for="eventLog">Event log:</label> | |
| <div class="event-log-contents" id="eventLog"></div> | |
| </div> | |
| <script> | |
| const log = document.querySelector('.event-log-contents'); | |
| window.addEventListener('error', (event) => { | |
| const p = document.createElement('p'); | |
| p.innerHTML = `${event.type}: ${event.message}`; | |
| log.append(p); | |
| }); | |
| const scriptError = document.querySelector('#script-error'); | |
| scriptError.addEventListener('click', () => { | |
| throw new Error('Intentional Error Thrown'); | |
| }); | |
| const whatevaError = document.querySelector('#whateva-error'); | |
| whatevaError.addEventListener('click', () => { | |
| throw new Error('Whateva I do what I want'); | |
| }); | |
| const randomError = document.querySelector('#random-error'); | |
| randomError.addEventListener('click', () => { | |
| const nouns = ['Dog', 'Strawberry', 'Silver spoon']; | |
| const verbs = ['fly', 'dance', 'flourish']; | |
| const noun = nouns[Math.floor(Math.random()*nouns.length)]; | |
| const verb = verbs[Math.floor(Math.random()*verbs.length)]; | |
| throw new Error(`One time, I saw a ${noun} ${verb}.`); | |
| }); | |
| </script> |