如何使用javascript从URL斜杠后获取值?

时间:2015-06-24 19:18:06

标签: javascript

如果从给定网址获得第一个斜线“如果有斜线”,我怎样才能获得该值?

如果网址为domain.com,我想返回空字符串。

如果网址为domain.com/index.html我还想返回一个空的刺痛

如果网址为domain.com/devdomain.com/dev/new/blah.html,我想返回'dev'

注意:我不知道第一次斜杠后的值会是什么

这就是我所做的

var icwsSiteBaseURL = document.location.pathname.split("/").slice(1, 2).toString();

我的代码适用于第一个和第三个示例,但不会为第二个示例返回空字符串。它将返回index.html

1 个答案:

答案 0 :(得分:1)

您只需要检查要忽略的值的结果。这是一个例子:

var domains = [
  'domain.com',
  'domain.com/index.html',
  'domain.com/dev',
  'domain.com/dev/new/blah.html'
  ];

var results = domains.map(function (domain) {
  // This would be document.location.path in your example
  var path = domain.split('/')[1] || '';

  // Check path if it matches the value you want to ignore
  return { domain: domain, result: path === 'index.html' ? '' : path };
});

document.write('<pre>' + JSON.stringify(results, null, 4) + '</pre>');

因此,对于您的示例代码:

var icwsSiteBaseURL = document.location.pathname.split("/").slice(1, 2).toString();
if (icwsSiteBaseURL === 'index.html') { icwsSiteBaseURL = ''; }