Q 文字列の操作 問題

by yshrkn

JavaScript

/*
 下記のURLから、第二階層のディレクトリ名と、第三階層のディレクトリ名を取得してください。
*/

var url = "https://developer.mozilla.org/ja/docs/Web/JavaScript";

function getUrlQuery(key) {

  var topLevelDomain = [".jp",".us",".uk",".org"];
  var splitedUrl = url.split("/");

  var level = 0;
  
  switch (key) {
    case "level1":
      level = 1;
      break;
    case "level2":
      level = 2;
      break;
    case "level3":
      level = 3;
      break;
  }

  var splitedUrlKeyTatgetIndex; // 「/」で分割されたURLの中で、topLevelDomainを含む配列のインデックスを持つ
  var topLevelDomainIndex; // 探索するURLがもつトップレベルドメインが、topLevelDomain配列の中の何番目に該当するかを持つ。

  outside:
  for (var i = 0, splitedUrlLen = splitedUrl.length; i < splitedUrlLen; i++) {
    for (var j = 0, domainLen = topLevelDomain.length; j < domainLen; j++) {
      if (splitedUrl[i].indexOf(topLevelDomain[j]) != -1) {
        splitedUrlKeyTatgetIndex = i;
        topLevelDomainIndex = j;
        break outside;
      }
    }
  }

  var documentRootUrl = splitedUrl.slice(splitedUrlKeyTatgetIndex + 1)

	return documentRootUrl[level-1];
};

console.log(getUrlQuery('level2'));
console.log(getUrlQuery('level3'));