数据类型的转化:自动转化、强制转化

数据类型转化,就是将当前数据类型转化为其他数据类型 , 分为自动转化和强制转化

一、自动转化:

1,其他数据类型自动转化为布尔类型

      **在 执行 if 判断时 ,其他数据类型会自动转化为布尔类型**

         0 、  '' (空字符串) 、 undefined  、  null 、 NaN  这五种情况转化为false(注0.0和0.00000等 都算是0 )

        其他的所有都会转化为 true      例如 : ' ' (字符串里空格) 、  '0' (字符串0)等

2,其他类型自动转化为字符串

        **执行字符串拼接时, 会将其他数据类型转化为字符串类型**
        拼接符号 : +号  两侧应该都是字符串类型, 如果是其他类型,会自动转化为 字符串类型,再执行拼接

        转化原则:
            布尔值 true  ---> 字符串 'true'
            布尔值 false ---> 字符串 'fasle'
            undefined ---> 字符串 'undefined'
            unll ---> 字符串 'null'
            数值 ---> 将数值解析转化为对应的纯数字的字符串  ; 科学技术法会解析,然后再进行拼接。

            数组 ---> 将 [] 中的内容,转化为字符串的形式,进行拼接      [1,2,3,4] --> 结果:1,2,3,4
            对象 ---> 任何对象,任何内容,都会转化为:  [object Object]  固定的内容形式,
            		  注意第一个object的首字母小写,第二个大写。
            函数 ---> 将所有的程序代码,全部转化为字符串     

3,其他类型自动转化为数值

        **在执行数学运算时 会触发数据类型的自动转化**

        转化原则:
            true  --->  1
            false --->  0
            undefined : 转化为 NaN 
            null : 转化为 0
        
            字符串 : 
                如果整个字符串,是纯数字字符串,或者符合科学计数法 ---> 转化为对应的数值    
               		 科学技术法会解析,然后再拼接
                如果字符串内有不符合数字规范的内容 ---> 转化为 NaN 

            数组,对象,函数:
                如果是 + 加号  执行的是字符串拼接效果 , 按照这些数据类型转化为字符串的原则来转化
                如果是 其他形式的运算 执行结果都是 NaN

二、强制转化:

1,其他数据类型,强制转化为布尔类型 : Boolean( 数据/变量 )

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

        转化原则与自动转化原则相同:
            false : 0   ''(空字符串)   undefined  null  NaN
            true  : 除上面以外其他数据,都转化为true

2,其他类型强制转化为字符串类型

        **方法1  变量.toString(进制类型)**

            将数值强制转化为字符串,并且可以设定转化的进制
            .toString(数)  之前,不能直接写数值,必须是写成变量的形式
            进制常用的数值是 2 8 16 
            可以设定的范围是 2 - 36 进制 。因为:10个数值+26个英文字母,最多只能是36个。
			
			例:
            var int = 100;
            console.log(int.toString(2));  // 这样就是以2进制形式输出, .toString()中没有输入数值,默认执行十进制

        **方法2  String( 变量 / 数据 )**
        
            将变量或者数据,转化为字符串
            原则按照自动转化的原则来执行
            不会改变变量中存储的原始数值

3,将其他数据类型强制转化为 数值类型

        **方法1  Number(变量/数值)** 

            将其他类型强制转化为数值类型,转化原则与自动转化选择相同
            true  --->  1
            false --->  0
            undefined : 转化为 NaN 
            null : 转化为 0

			字符串 : 
                如果整个字符串,是纯数字字符串,或者符合科学计数法 ---> 转化为对应的数值    
               		 科学技术法会解析,然后再拼接
                如果字符串内有不符合数字规范的内容 ---> 转化为 NaN 

			数组,对象,函数:
				执行结果都是 NaN

        **方法2  parseInt(变量 / 数据)** 

            是获取变量或者数据的整数部分 , 从数据的左侧起解析获取整数内容 

            true    false    undefined    null    对象   函数  : 都转化为 NaN
            
            数组:获取[]中的第一个数值的整数部分,如果有就获取,如果没有,结果是NaN
            数值:如果是整数就直接获取,如果是浮点数,或者科学计数法,就获取整数部分, 科学计数法是解析之后再获取
            字符串:
            		如果是纯数字的字符串,就直接获取整数部分,科学计数法不会解析;
            		如果字符串含有不是数字的部分,则从左侧开始, 找整数部分,如果有就输出数,没有就 NaN 

        **方法3   parseFloat( 变量 / 数值 )**

            获取浮点数部分

            true    false    undefined    null    对象   函数  : 都是 NaN
            
            数组:获取[]中第一个数值的整数部分,如果有就获取,如果没有,结果是NaN
            数值: 整数,浮点数,都会完整获取,科学计数法是解析之后再获取
            字符串:
            		如果是纯数字的字符串,就全部获取, 科学技术法会解析;
            		如果字符串含有不是数字的部分,则从左侧开始解析符合浮点数的部分,如果有就输出数,没有就 NaN 
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C语言中,强制数据类型转换是指将一种数据类型的值转换为另一种数据类型的值。这种转换可以通过在变量或表达式前面加上要转换的目标类型的名称来实现。 强制数据类型转换的目的是将某个数据类型的值转换为另一种数据类型,以便满足特定的需求或运算要求。在实际应用中,强制数据类型转换常常用于以下几个方面: 1. 提升精度:当进行某些运算时,如果操作数的数据类型不一致,可能会导致精度丢失或运算结果不准确。通过强制数据类型转换,可以将较低精度的数据类型转换为较高精度的数据类型,从而提升计算的准确性。 2. 缩小类型范围:有时候我们可能需要将一个较大范围的数据类型转换为一个较小范围的数据类型,以便满足特定的需求或优化内存空间的使用。通过强制数据类型转换,可以将较大范围的数据类型转换为较小范围的数据类型,从而减少内存占用。 3. 类型兼容性:在某些情况下,变量的数据类型需要与其他数据类型进行兼容,以便进行数据传递或数据交换。通过强制数据类型转换,可以将一个数据类型转换为另一个兼容的数据类型,实现数据的无缝传递和交换。 需要注意的是,在进行强制数据类型转换时,可能会导致数据的精度丢失或运算结果不准确,因此需要谨慎使用。另外,强制数据类型转换可能会改变变量的值,需要根据实际需求进行适当的处理和转换
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值