isExclude

isExclude

コード

function isExclude(patterns) {
  • rr に正規表現文字列にマッチする正規表現を収納する
  • patterns を改行文字で split して、eps に収納する(配列)
    var rr = /^\/(.+)\/$/
    var eps = (patterns || '').split(/[\r\n ]+/)
  • eps 配列に対して for ループを回す
    for (var i = 0; i < eps.length; i++) {
  • reg に null を定義する
        var reg = null
  • eps[i] が 正規表現であればこれを reg に収納する
        if (rr.test(eps[i])) {
            reg = eps[i].match(rr)[1]
        }
  • そうでなければ wildcard2regep で正規表現に整形したものを reg に収納する
        else {
            reg = wildcard2regep(eps[i])
        }
  • eps[i] が空白文字以外の文字で location.href が reg に match したら true を返す
        if (eps[i].match(/[^\s+]/) && location.href.match(reg)) {
            return true
        }
    }
  • どれにも引っ掛らなかったら false を返す
    return false
}