zoukankan      html  css  js  c++  java
  • js 中不同类型运算的隐式转换

    1.字符串和数字相加,数字转成字符串.

    var one="This is a test";
    var two=123;
    var three=one+two;
    
    // 结果:three:This is a test123

    2.数字和布尔值相加,布尔值 false 转成 0,true 转成 1

    var one=13;
    var two=true;
    var three=one+two;
    // 结果 three:14

    3.字符串与布尔值相加,布尔值转化成字符串。

    var one=‘hello ’;
    var two=true;
    var three=one+two;
    // 结果 hello true

    4.数字与 null(空值) 相加,null 转化为数字 0:

    var car=null+3+4;    // 结果为7

    5.字符串与 null(空值) 相加,null 转化为字符串:

    var car=null+"a";    // 结果为 nulla

    6.取模运算的结果符号只与左边值的符号有关:

    var x = 7 % 3; // 结果为 1
    var y = 7 % (-3); // 结果为 1
    var z = (-7) % 3; // 结果为 -1
    •  如果 % 左边的操作数是正数,则模除的结果为正数或零;
    •  如果 % 左边的操作数是负数,则模除的结果为负数或零。

    总结如下:

    1、字符串一个很能强大的数据类型;在执行加 + 时,将被加的对象统一处理为字符串。

    2、bool 类型在与数字类型进行相加时,视为 0 或者 1 处理。

    3、null 类型与数字类型进行累加时,视为 0 处理。

    4、bool 类型与 null 类型进行累加时,视为其与整数类型累加处理。

    5、undefined 除了与字符串进行累加时有效(undefined 视为字符串"undefined"处理),其他情况皆返回 NaN。

    6、求模 % 运算,运算结果只取决于第一个数字的正负。

  • 相关阅读:
    P3970 [TJOI2014]上升子序列
    受欢迎的牛(Tarjan缩点模板)
    Y15BeTa的乱搞方法(占坑待填)
    Luogu P4145 上帝造题的七分钟2 / 花神游历各国
    Luogu P1525 【关押罪犯】
    Luogu P1077 摆花 NOIP2012pjT3
    Nowcoder deco的abs
    CSP-S前的芝士清单
    普天同庆
    线段树区改区查标记永久化板子
  • 原文地址:https://www.cnblogs.com/art-poet/p/12097567.html
Copyright © 2011-2022 走看看