数据类型的转化 — 自动转化与强制转化

JS学习第一周(逆战班)
(一)布尔类型
其他类型转化为布尔类型
1. 自动转化:
在执行if判断时,其他数据类型自动转化为布尔类型

例如:   var a = 40;
         if(a>50){
             console.log('true')
         }else{
             console.log('false')
         } 
//输出结果为false

If 判断会根据()中,表达式的结果来执行程序,

如果表达式的结果是true,会执行if{ }中的内容;
如果表达式的结果是false,会执行else{ }中的内容。

其他类型转化为布尔类型的原则:
转化为false:0 、“”、 undefined、 null、 NaN ,
其他的会转化为true。

2. 强制转化
其他数据类型强制转化为布尔类型
使用JavaScript中定义好的Boolean(变量)函数

例如:    var a = 0;
         console.log(Boolean(a));
//输出结果为false

将a 中存储的数值 0 转化为布尔值输出,转化结果为false。

强制转化原则与自动转化原则相同:
转化为false:0 、“”、 undefined、 null、 NaN ,
其他的会转化为true。

Boolean(变量)这个方法,不会改变变量中存储的原始数值,只是将变量中的数值,解析获取,在转化输出,不会改变变量的内容。

(二)字符串类型
其他类型转化为字符串类型

1. 自动转化:
在执行字符串拼接时会自动转化为字符串类型
执行字符串拼接,拼接符号+好两侧,都应该是字符串类型;
如果是其他类型JavaScript程序,会自动转化为字符串类型,然后再执行拼接。

例如:    var b = 100;
         console.log(b+'true');
//输出结果为100true

三个特殊转化的自动转化:
① 数组:将 [ ] 中的内容 转化

例如:       var b ="100"+[1,2,3];
            console.log(b)
//输出结果为 1001,2,3

② 对象:不管什么内容都会转化为[ object Object ]

例如:       var b ="100"+{name:''}
            console.log(b)
//输出结果为  100[object Object]

③ 函数:所有程序代码都转化字符串

例如:      var b ="100"+function fun(){}
            console.log(b)
//输出结果为 100function fun(){}

2. 强制转化:
其他数据类型强制转化为字符串类型

方法1:
.toString(进制类型)
将变量强制转化为字符串类型,并且可以设定转化的进制
常用的进制数值是(2)(8)(16)
可以设定的进制范围是2-36、十个数值和26字母

例如:var b =100;
      console.log(b.toString(16));
//输出结果为  64

方法2:
string(变量)
将变量转化为字符串,原则按照自动转化的原则执行,不会改变变量存储的原始数值。

例如:       var b =100;
            console.log(String(b));
//输出结果为  100

(三)数值类型
1. 自动转化
在执行数学运算时,会自动转化数值

转化原则:true -> 1
False -> 0
undefined -> NaN
Null -> 0

字符串类型转化为数值类型:
如果整个字符串是纯数字字符串或者符合科学技术法,会转化为对应的数值;如果字符串中有不符合数字规范的内容,会转化为NaN。

例如:       var c =100 - true;
            console.log(c);
//输出结果为  99

数组 对象 函数 都会转化为NaN

例如:      var c =100 -'[1,2,3]';
            console.log(c);
//输出结果为  NaN

2. 强制转化
方法1:
. number(变量) 转化原则与自动转化原则相同

例如:           var c = 100 - true;
                console.log(Number(c));
//输出结果为 99

方法2:
parseInt(变量) 获取整数

例如:           var c =[1,2,3,4];
                console.log(parseInt(c));
//输出结果为 1

方法3:
parseFloat(变量) 获取浮点数

例如:           var c =123.123;
                console.log(parseFloat(c));
//输出结果为  123.123
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值