JavaScript 开发中有时需要获取绝对 URL;默认的HTML中的srchref属性都会返回绝对路径,但是一些以字符串形式存储的 URL 则处理起来会比较繁琐,比如:

  • / 或者不以 / 开头的;

  • // 开头的;

  • ? 开头的;

  • # 开头的;

  • ……

这时候就可以动态创建一个带有srchref属性的HTML标签,然后再返回这个标签的srchref属性值;

var getAbsoluteUrl = (function() {
  var a = null;
  return function(url) {
    a = a || document.createElement('a');
    a.href = url;

    return a.href;
    };
})();

这里在函数内再返回一个函数的作用是,只会在第一次调用函数时创建一个a标签,而不会每次调用函数都创建一个a,详细的可以参数一下这篇文章JavaScript Functions that Return Functions


十木
3.6k 声望539 粉丝

知易行难~埋头赶路~自己选择的路~爬也得爬完~