数据类型转换与运算符的综合运用

<!-- 
        x && y
        x真,传y
        x假,传x

        x || y
        x真,传x
        x假,传y

        需要比较的时候,才会返回true或false
     -->
    <script>
    // 1:求值。要求写出运算过程》
    var x = 0; 
    var y = 0;
    var z = 1;
    x = (y++ + ++y)*z;
    /* 
    x= (0+2)*1
     = 2
     */
    z += ++y
    /*
    z = z + ++y 
      = 1 +3
      = 4
    */

    // 2:求下面那个数据发生的类型转化;转化结果是什么?
    var num = ''+1;
    // 1 -->'1' num = '1'
    var num2 ='wangjiaru' - 250;
    //  'wangjiaru'--> NaN  num2 = NaN 
    var num3 = 'wangiaru' + true + {}
    //  true-->'true'   {}--->'{object,object}'  num3 = 'wangiarutrue[object Object]'
    var num4 = 'wangjiaru' + false -2;//因为后面有个减号,所以最终结果是NaN;如果去掉后面的-2,就变成了字符串拼接,即结果为"wangjiarufalse"
    // // 'wangjiaru'--> NaN false-->0 num4 = NaN
    var num5 = 1-'';
    // ''---> 0  num5=1
    var num6 = '123'-undefined;
    // undefined --> NaN  nume6= NaN


    // 3: 求下面变量保存的结果是什么? 要求过程
    var res = 1<2 && '';
    // ''
    var res1 = {} && '王加入';
    // '王加入'
    var res2 = {} && {name:'wangjiaru'};
    // {name:'wangjiaru'}
    var res3 = 'wangjairu'&&1&&{}&&0;
    // 'wangjiru'-->true 1--->true {}-->true 0--->false
    // res3 = 0
    var res4 = ''||true;
    // true
    var res5 = true || 'wang' || false;
    // true
    var rese6  = {} || {name:'a'};
    // {}

    var res7 = (1>2)||(true>false)&&(!0);
    //         false||true  ==> true
    // !0===> true   
    // ====> true
    // 1>2==false
    // 所以res7 = true
    var res8 = !'wangajiru';
    // 'wangjiaru' ==>true
    // res8 =false
    </script>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值