javascript if语句如果url包含子字符串

这个问题在这里已经有了答案:

  • 如何检查一个字符串是否包含JavaScript中的子字符串? 49个答案

  • 您可以使用indexOf方法

    // Function is used to determine whether a string contains another string
    function contains(search, find) {
        ///<summary>Sees if a string contains another string</summary>
        ///<param type="string" name="search">The string to search in</param>
        ///<param type="string" name="find">The string to find</param>
        ///<returns type="bool">A boolean value indicating whether the search string contained the find string</returns>
        return search.indexOf(find) !== -1;
    }
    

    以下是一些示例用法:

    var url = document.URL;
    var substring = 'foo';
    if (contains(url.toLowerCase(), substring.toLowerCase()) { 
    // Contains string
    }
    

    包含函数是大小写的 ,但是; 正如在我的例子中演示的那样,通过调用StringPrototype.toLowerCase方法,可以使其不敏感


    例如,您可以使用indexOf:

    if (url.indexOf(substring)>=0) {
    

    这是一个前瞻性的答案,并且在当前的实现中不起作用。

    ECMAScript 6目前正在定义一个String.prototype.contains方法。 这可以让你做到:

    if (url.contains(substring)) {
    

    再次,这是未来的增加。 目前正在起草ECMAScript 6(Harmony),这在技术上可以被删除,尽管看起来不太可能。

    目前的草案:

    15.5.4.24 String.prototype.contains(searchString,position = 0)

    contains方法接受两个参数searchString和position,并执行以下步骤:

  • OCheckObjectCoercible(this value)
  • SToString(O)
  • ReturnIfAbrupt(S)
  • searchStrToString(searchString)
  • ReturnIfAbrupt(searchStr)
  • posToInteger(position) 。 (如果position undefined ,则此步骤产生值0 )。
  • ReturnIfAbrupt(pos)
  • lenS中元素的数量。
  • 让我们start min(max(pos, 0), len)
  • searchLen成为searchLen中的字符searchStr
  • 如果存在任何不小于start的整数k ,使得k + searchLen不大于len ,并且对于小于searchLen所有非负整数j ,则S位置k+j处的字符与位置j处的字符相同searchStr ,返回true ; 但是如果没有这样的整数k ,则返回false
  • 链接地址: http://www.djcxy.com/p/73945.html

    上一篇: javascript if statement if url contains substring

    下一篇: Use of =+ operator in Java?