так, підрядка. Вам не потрібно робити Math.min; підрядка з більшим індексом, ніж довжина рядка, закінчується на початковій довжині.
Але!
document.getElementById("foo").innerHTML = "<a href='" + pathname +"'>" + pathname +"</a>"
Це помилка. Що робити, якщо документ document.referrer мав апостроф? Або різні інші символи, які мають особливе значення в HTML. У гіршому випадку код зловмисника в рефералі може ввести JavaScript у вашу сторінку, яка є отвором для безпеки XSS.
Хоча можна уникати символів у назви шляху вручну, щоб зупинити це, це болісно. Вам краще використовувати методи DOM, ніж обмінюватись з внутрішніми HTMLML-рядками.
if (document.referrer) {
var trimmed= document.referrer.substring(0, 64);
var link= document.createElement('a');
link.href= document.referrer;
link.appendChild(document.createTextNode(trimmed));
document.getElementById('foo').appendChild(link);
}