zoukankan      html  css  js  c++  java
  • 隐式转换之字符串和数值比较

    1.字符串和数值比较,这种数值字符串会隐式转换为数值类型然后比较

    var aa='6';
    console.log(aa<8); // 输出为true 
    

    2.如果aa带有其他字符

    var aa='6元';
    console.log(aa<8); // 输出为false,不报错
    

    3.如果给aa转换成数值类型为NaN

    var aa='6元';
    console.log(Number(aa)); // 输出为NaN 
    

    4.如果数值和NaN比较

    var aa='6元';
    console.log(aa<NaN); // 输出为false,不报错
    

    5.带数值字符和NaN、null、undefined比较

    var aa='6元';
    console.log(aa>NaN); // 输出为false 
    console.log(aa>undefined); // 输出为false 
    console.log(aa>null); // 输出为true
    

    6.数值和NaN、null、undefined比较

    var aa='6';
    console.log(aa>NaN); // 输出为false 
    console.log(aa>undefined); // 输出为false 
    console.log(aa>null); // 输出为true 
    

    7.纯字符串比较

    var aa='2';
    console.log('2'<'15'); // 输出为false,原因是字符串在比较的时候会先比较第一位,第一位相同在比较第二位
    
    总结:#####
    ①可见在字符串和数值字符串比较的时候,数值字符串会尝试隐式转换为数值类型然后在进行比较,当转为NaN的时候,任何数和NaN以及undefined比较都为false,但是数值和null,都为true
    ②纯字符串比较的时候,会从第一位开始比较,如果第一位相同则进行第二位比较
  • 相关阅读:
    [jni]Getting Started
    USB接口程序编写
    mysql
    learn 学习 试错 练习 SSL
    svn
    第三方支付链接
    错误信息
    app 推广
    xcode 配置等
    .net wordpress 服务器类
  • 原文地址:https://www.cnblogs.com/bonly-ge/p/9261653.html
Copyright © 2011-2022 走看看