• js jQuery中文字符串比较


    先说下普通字符串(英文)比较:
    一般使用双等来判断(==),如果还需要类型相同那么就用三等(===)
    1. 双等(==)是完全向后兼容的,如果两个操作数类型不一致,它会在某些时候自动对操作数进行类型转换
    var strA = "hello world";
    var strB = new String("hello world");
    if(strA == strB){
        alert("true!"); //弹出true
    }
    这两个变量含有相同的字符序列,但数据类型却不同,前者为string,后者为object,在使用"=="操作符时,JavaScript会尝试各种求值,以检测两者是否会在某种情况下相等。所以下面的表达式结果为true: strA == strB。
    2. 三等(===)它在求值时不会这么宽容,不会进行类型转换。所以表达式strA === strB的值为false,虽然两个变量持有的值相同。
    var strA = "hello world";
    var strB = new String("hello world");
    if(strA === strB){
        alert("true!"); //弹出true
    }else{
        alert("false!!!"); //弹出false
    }
    因此,对应的不相等就有"!="和严格的"!==",它们的关系就类似于"=="和"==="。

    标题所说的js中文字符串比较

    1. 中文字符串比较很容易出问题,首先你可以用上面所说的双等"=="

    var str = "不作死不会死";
    if(str == "不作死不会死"){
        alert("不作死不会死");
    }else{
        alert("已死!");
    }

    若是在比较时没有反应,我们可以转换一下思路,我用的是indexOf()这个方法

    var str = "不作死不会死";
    if(str.indexOf("不作死不会死") == 0){
        alert("不作死不会死");
    }else{
        alert("已死!");
    }

    js indexOf()简介

    定义和用法

    indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。
    语法
    stringObject.indexOf(searchvalue,fromindex)
    参数 描述
    searchvalue 必需。规定需检索的字符串值。
    fromindex 可选的整数参数。规定在字符串中开始检索的位置。它的合法取值是 0 到 stringObject.length - 1。如省略该参数,则将从字符串的首字符开始检索。
    说明
    该方法将从头到尾地检索字符串 stringObject,看它是否含有子串 searchvalue。开始检索的位置在字符串的 fromindex 处或字符串的开头(没有指定 fromindex 时)。如果找到一个 searchvalue,则返回 searchvalue 的第一次出现的位置。stringObject 中的字符位置是从 0 开始的。

    so,I needn`t to say anything!忍者

  • 相关阅读:
    快速排序
    Java 循环队列
    Java 用链表实现栈和队列
    Java 遍历集合时产生ConcurrentModificationException异常
    Java 使用Scanner时的NoSuchElementException异常
    Mac中安装git后,终端运行git出错,提示安装Xcode
    Java的设计模式之开篇(1)
    粒子群算法(PSO)
    mysql时间与字符串相互转换
    Jsp中使用EL表达式对字符串进行操作
  • 原文地址:https://www.cnblogs.com/bsping/p/4064356.html
Copyright © 2020-2023  润新知