DVirt: Дак вы уточняйте, что вам надо в вопросе. Где хоть слово про это? Написано "надо подгружать скрипт и кэшировать его" всё. Тут нет ясновидящих.
Выше дал ссылку на requirejs, используйте его.
Что? Документация на 10 строк ПРОСТЕЙШЕГО кода?
var cache = {}
function script(url) {
if (cache[url]) return;
cache[url] = '';
var s = document.createElement('script');
s.type = 'text/javascript';
s.async = true;
s.src = url;
var x = document.getElementsByTagName('head')[0];
x.appendChild(s);
}
keslo: Дак зачем вы туда index.js импортите? Если его там нет рядом с файлом, в который вы импортите. Если хотите, чтобы это сработало, то файл, в require('./index.js') должен лежать там же, где index.js