Building on Vikram Deshmukh's answer here is a version that uses a varying cache-busting parameter and replaces it every time it is used.
Expanded version:
javascript:void((function () {
'use strict';
let href;
if (document.location.search === '') {
href = document.location.href + '?_=' + Date.now();
} else {
let params = new URLSearchParams(document.location.search.substring(1));
if (params.get('_') === null) {
href = document.location.href + '&_=' + Date.now();
} else {
params.set('_', Date.now());
href= document.location.href.substring(0, document.location.href.indexOf('?') + 1) + params.toString();
}
}
document.location.assign(href);
})());
Compact version:
javascript:void((function () { let href; if (document.location.search === '') { href = document.location.href + '?_=' + Date.now(); } else { let params = new URLSearchParams(document.location.search.substring(1)); if (params.get('_') === null) { href = document.location.href + '&_=' + Date.now(); } else { params.set('_', Date.now()); href= document.location.href.substring(0, document.location.href.indexOf('?') + 1) + params.toString(); } } document.location.assign(href); })());