In general, browsers will cache the response from the server based on the requested URL (with request parameters). When the browser again requests the same URL, a cached copy will be used. (of course, there are caching strategies, but let's say a simple scenario)
So, to get the browser to get a new copy of your file, you just need to change the request URL for this file. You either change the file name, or save the name, or simply change the query parameter.
If you are developing a page and you can change it, you can use the automatic way to create javascript links on the page
<script type="text/javascript" src="/myfile.js?modified=XXXXX"> </script>
Where XXXX is programmatically set by ticking the DateModified myfile.js information in each page rendering. Thus, whenever these files are changed, the script output link automatically changes to a new value, and the browser is forced to download it again.
for example, if I have a funcs.js file, then the output will look like
<script type="text/javascript" src="/funcs.js?modified=43253452352342"> </script>
Later, if the file is modified, the rendering will change to something like
<script type="text/javascript" src="/funcs.js?modified=43253456789678"> </script>
the changed request parameter is changed causes the browser to download the file again