zoukankan      html  css  js  c++  java
  • 隐式转换和强制转换

    隐式转换:
      场景——数学运算符:+ - * /
      规则:
        +:当任意一边出现字符时,“+”会把数值类型转换成字符类型,此时 + 代表拼接
        -、*、/:出现纯数字字符时,会转换成数值类型处理,出现非数字类型时,会出现“NaN”

      场景——关系运算符:> < >= <= != == ===
      规则:
        当只有一边为纯数字字符时,会转换成数值比较
        当两边全部是数字字符时,会按照字符串对比的规则对比(逐位比较,得到结果,停止比较)
        ==:若有字符类型会转换成数值类型,比较的是值
        ===:若有字符类型不会转换,比较的是值和数据类型,全等

      场景——if语句:
      规则:

        0、“”、null、undefined、NaN在if的()内会转换为false


    强制类型转换:
      字符转数值:
        parseInt():从左向右依次转换,能转则转,不能转停止;如果第一位就不能转,直接NaN;不识别小数点。
        parseFloat():等同于parseInt,同时可以识别小数点
        Math.round():严格转换,不允许出现任何非数字的字符,否则NaN;取最接近的整数
        Number():严格转换,不允许出现任何非数字的字符,否则NaN;直接转换
        -、*、/:利用数学运算符的隐式转换,把字符转换成数值

      数值转字符:
        toString():直接将数值转换成字符
        toFixed():直接转换,参数为保留的小数位数
        +:利用数学运算符的隐式转换,+连接一个空字符
    其他类型的转换:

      用+、-、*、/ 对true、false、null进行转换可得,true为1,false为0,null为0

  • 相关阅读:
    webpack 3 零基础入门教程 #3
    webpack 3 零基础入门教程 #2
    webpack 3 零基础入门教程 #1
    webpack 3 零基础入门教程 #4
    'System.Array' does not contain a definition for 'ToArray' and no extension method 'ToArray' accepting a first argument of type 'System.Array' could be found (are you missing a using directive or an a
    Excel将两列依次合并为一列
    Unity3D射线的方向
    关于非奇异矩阵
    Unity3D获取游戏屏幕大小
    JS中的路径问题
  • 原文地址:https://www.cnblogs.com/maozo/p/11737154.html
Copyright © 2011-2022 走看看