vâng, chuỗi con. Bạn không cần phải làm Math.min; chuỗi con có chỉ số dài hơn độ dài của chuỗi kết thúc ở độ dài ban đầu.
Nhưng!
document.getElementById("foo").innerHTML = "<a href='" + pathname +"'>" + pathname +"</a>"
Đây là một sai lầm. Điều gì xảy ra nếu document.referrer có dấu nháy đơn? Hoặc nhiều nhân vật khác có ý nghĩa đặc biệt trong HTML. Trong trường hợp xấu nhất, mã kẻ tấn công trong trình giới thiệu có thể đưa JavaScript vào trang của bạn, đây là lỗ hổng bảo mật XSS.
Mặc dù có thể thoát các ký tự trong tên đường dẫn theo cách thủ công để ngăn chặn điều này xảy ra, nhưng điều đó hơi khó khăn. Bạn nên sử dụng các phương thức DOM hơn là đấu tranh với các chuỗi bên trong.
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);
}