关于javascript与java自动转换的差异性--Char和String转为Number

在java中所谓自动转换就是小范围与大范围进行运算时会自动向大范围进行转换类型,精度弱的会向精度强的自动转换,比如

char a='1';
System.out.println(a+1);//结果是50

上面中的a是Char类型对应ASCII中就是所谓的49,先转成ASCII中所对应的数字然后在进行运算
上面中char类型就是2个字节当其与4个字节的int类型的0进行加法是就会进行自动转换

当是String,布尔不能进行算术运算哦!!!

但在javascript中可不是这种自动转换过程,比如

let a='5'  //当进行运算时所转为的类型必须是可转成数字型的,就是所谓的数字型字符,数字型字符串
let b=a-1
console.log(b)//4  
b=a+1
console.log(b) //51

第一个b为4,第二个b为51
有个重要的点就是写成字符或字符串的数据必须是数字型字符,数字型字符串
在javascript中,不管是Char,String当期遇见算术运算符时(+号例外)都会进行转为Number,如果是+就会当作拼接字符串,当然遇见false,null进行算术运算时(+号除外)会进行自动转换只是它们作为0而已,但是undefined(未定义,它连啥类型都不知道)其运算就是NAN,还有一个基本数据类型Symbol如果进行算术运算会报错
在前端混了比较长时间,都会忘了自己原来是java后端的记录一下

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值