Define a global variable in a JavaScript function

As the others have said, you can use var at global scope (outside of all functions and modules) to declare a global variable: (Note that that’s only true at global scope. If that code were in a module — <script type=”module”>…</script> — it wouldn’t be at global scope, so that wouldn’t create a global.) Alternatively: In modern environments, you can assign to … Read more

Google Chrome Uncaught (in promise) DOMException while playing AUDIO

You’re receiving an uncaught exception because you aren’t handling an error. Audio is an HTMLMediaElement object, and the play() method returns a promise. Therefore I recommend handling the error. One of two errors are possible: NotSupportedError This means that the audio source is not supported by the browser (probably due to audio format) NotAllowedError This is the one I … Read more

How do I redirect to another webpage?

One does not simply redirect using jQuery jQuery is not necessary, and window.location.replace(…) will best simulate an HTTP redirect. window.location.replace(…) is better than using window.location.href, because replace() does not keep the originating page in the session history, meaning the user won’t get stuck in a never-ending back-button fiasco. If you want to simulate someone clicking on a link, use location.href If you … Read more

What does this symbol () => mean in Javascript? [duplicate]

It’s an arrow function, newly defined in ES6. An arrow function expression has a shorter syntax than a function expression and does not bind its own this, arguments, super, or new.target. Arrow functions are always anonymous. These function expressions are best suited for non-method functions, and they cannot be used as constructors. They are often just a shorter way of writing the anonymous … Read more

How to format a JavaScript date

For custom-delimited date formats, you have to pull out the date (or time) components from a DateTimeFormat object (which is part of the ECMAScript Internationalization API), and then manually create a string with the delimiters you want. To do this, you can use DateTimeFormat#formatToParts. You could destructure the array, but that is not ideal, as … Read more

Loop through an array in JavaScript

Three main options: for (var i = 0; i < xs.length; i++) { console.log(xs[i]); } xs.forEach((x, i) => console.log(x)); for (const x of xs) { console.log(x); } Detailed examples are below. 1. Sequential for loop:  Run code snippet Pros Works on every environment You can use break and continue flow control statements Cons Too verbose Imperative Easy to have off-by-one errors (sometimes also … Read more