Đây là một câu hỏi cực kỳ cũ, nhưng đây là những cách tiếp cận cá nhân tôi sử dụng ...
Nhận URL tiêu chuẩn / cơ sở
Như nhiều người đã nêu, điều này hoạt động cho hầu hết các tình huống.
var url = window.location.origin;
Nhận URL cơ sở tuyệt đối
Tuy nhiên, phương pháp đơn giản này có thể được sử dụng để loại bỏ bất kỳ số cổng nào.
var url = "http://" + location.host.split(":")[0];
Chỉnh sửa: Để giải quyết mối quan tâm, được đặt ra bởi Jason Rice , có thể sử dụng cách sau đây để tự động chèn đúng loại giao thức ...
var url = window.location.protocol + "//" + location.host.split(":")[0];
Đặt URL cơ sở
Như một phần thưởng - URL cơ sở sau đó có thể được xác định lại trên toàn cầu.
document.head.innerHTML = document.head.innerHTML + "<base href='" + url + "' />";