浅析数据类型的转化

数据类型的转化

	定义:在 JavaScript 程序中 ,将当前数据类型转化为其他数据类型,就叫数据类型转化

为什么要数据类型转化

	在 JavaScript 程序的执行过程中,往往需要变量中存储的数值是某种特定的数据类型,别的数据类型不行,此时就需要进行数据类型的转化

数据类型的转化有哪些类型?

	数据类型的转化分为 : 自动转化 和 强制转化 两种类型

自动转化

	定义:自动转化是计算机程序,自动完成的转化

案例

1.布尔类型自动转化
For example:

 if(0){
            console.log( '转化为true' );
            }
        else{
            console.log( '转化为false' );
            }
        if(''){
            console.log( '转化为true' );
            }
        else{
            console.log( '转化为false' );
            }
    .........
//注意:当if () 中值为0 '' null NaN undefined 时,if会将他们的类型自动转换为false,其他的值则会转换为true

2.字符串类型自动转化
For example:

 var a1 = 'console'+true;
	  console.log(a1);
  var a2 = 'console'+false;
      console.log(a2);
  var a3 = 'console'+undefined;
      console.log(a3);
  var a4 = 'console'+null;
      console.log(a4);
  var a5 = 'console'+NaN;
      console.log(a5);
  // 特殊1 数组 
  var a6 = 'console' + [1,2,3,4,5] ; 
      console.log(a6);

  // 特殊2 对象
  var a7 = 'console' + {name:'LPR' , age:20 , sex:'女'} ;
      console.log(a7);

  // 特殊3 函数
  var a8 = 'console' + function fun(){console.log(123)};
      console.log(a8);

3.数值类型自动转换
在执行数学运算时,会将其他类型自动转化为数值进行运算
For example:

var a1 = 100 - true;      --> 99
    console.log(a1);
var a2 = 100 - false;     --> 100
    console.log(a2); 
var a3 = 100 - null;      --> 100
    console.log(a3);  
var a4 = 100 - NaN;       --> NaN
    console.log(a4);
var a5 = 100 - 'console'; --> NaN
    console.log(a5);
var a6 = 100 - '3e3';     --> -2900
    console.log(a6);
var a7 = 100 - '98.5';    --> 1.5
    console.log(a7);
var a8 = 100 + [1,2,3,4,5]; --> 1001,2,3,4,5
    console.log(a8);
var a9 = 100 + {name:'LPR' , age:20 , sex:'女'}; --> 100[object Object]
    console.log(a9);
var a10 = 100 + function fun(){console.log(123)}; --> 100function fun(){console.log(123)}
    console.log(a10);

数据类型强制转换?

	定义:强制转化是指由程序员强行完成的转化。

案例

1.布尔类型强制转换
For example:

var int = 100;
    console.log(Boolean(int)); --> true
var int = 0;
    console.log(Boolean(int)); --> false

2.字符串类型强制转换
For example:

var int = 1314;
    console.log(int.toString(2));  -->10100100010
var int = 1314;
    console.log(int.toString(8));  -->2442
var int = 1314;
    console.log(int.toString(16)); -->522

3.数值类型转换
For example:

console.log( Number(true) );   // 1
console.log( Number(false) );  // 0
console.log( Number(null) );   // 0
console.log( Number(undefined) );   // NaN
console.log( Number('123abc') );    // NaN
console.log( Number('100') );       // 100
console.log( Number('100.123') );   // 100.123
console.log( Number('2e4') );       // 20000

console.log( parseInt(true) );      // 都是 NaN            
console.log( parseInt(false) );                                   
console.log( parseInt(null) );                                    
console.log( parseInt(undefined) );                               
console.log( parseInt( {name:'zhangsan'} ) );                     
console.log( parseInt( function fun(){console.log('abc')} ) );

console.log( parseFloat(true) );     // 都是 NaN            
console.log( parseFloat(false) );                                   
console.log( parseFloat(null) );                                    
console.log( parseFloat(undefined) );                               
console.log( parseFloat( {name:'zhangsan'} ) );                     
console.log( parseFloat( function fun(){console.log('abc')} ) ); 

console.log( parseInt( 100 ) ); -->100
console.log( parseInt( '100.52458ea4' ) ); -->100

console.log( parseFloat(100) );
console.log( parseFloat(100.1234) );
console.log( parseFloat(1.234567e3) );

总结

这次主要浅谈了一些关于数据类型的自动转换和强制转换,当然只是大概,并不是很全面。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值