JavaScript———不同数据类型之间的相互转换

文章目录


前言

       昨天我们介绍了什么是变量以及数据类型,今天所要介绍的是JS中数据类型之间的相互转换,这一小节在后面的学习中有着至关重要的作用,初学Js的同学一定要多花时间理解其中的方法与含义。


一、什么是类型转换

      有时候我们在使用数据时,例如一个字符型和一个数字形的加法运算,因为数据格式不同因此不能进行运算,所以我么可能想把当前数据的数据类型变为其他的数据类型,这就需要用到我们今天所要学到的数据的类型转换


二、不同数据类型之间的转换方式

1.其他数据类型转换为String(字符型)

方式一:toString( ) 方法
  • 调用被转换数据类型的    toString( ) 方法
例如   调用a 的 toString( )方法   a.toString( );
  1. 该方法不会影响到原变量,它会将转换的结果返回,
  2. 但是注意: null和undefined 这两个值没有  toString( )方法,会报错
方式二:调用String( )函数,
  1. 调用String( )函数,并将被转换的数据作为参数传递给函数
  2. 使用String( )函数作强制类型转换时,对于number 和 Boolean   实际上就是调用的toString( )方法 ,返回String,但是对于null 和undefined  就不会调用toString( )方法,它会将 null 直接转换为  "null"    将undefined 直接转换为  “undefined”  。
方式三:通过字符串拼接的方式
       所谓字符串的拼接,就是利用  + 可以把两个字符串类型拼接起来成为一个新的字符串
var number= 10;                          //定义一个变量number并赋值为10(数值型)
number = number + '' ";               //将数值型number拼接一个空的字符串   ”  ”
console.log(typeof number);        // 该语句将返回  String

2.其他数据类型转换为Number(数值型)

方式一:使用Number( )函数
  • 字符串  转    数字
  1. 纯数字的字符串,直接转为字符串
  2. 字符串中有非数字的内容,转为NaN
  3. 如果字符串是一个或多个空格,转为 0
  • 布尔值  转    数字
  1.  true   转为 1
  2. false  转为 0
  • null  转  数字  为0
  • undefined  转  数字   NaN
方式二: 通过数学运算符进行转换,在不影响原数字的情况下可以使用例如  * / - 等进行,加号会视为字符串的拼接

var str = '1';

str = str -0;

console.log(typeof  str);   //返回值为  number

方式三: 专门用来对付字符串
  •   parseInt ( ) 把一个字符串转换为一个整数,从左到右依次转换彭碰到非数值时停止转换。
  •   parseFloat(  ) 把一个字符串转换为一个浮点数 
注意: 如果对非String  使用parseInt ()或者 parseFloat(   ) ,会先将其转换为String 然后再操作

该处使用的url网络请求的数据。

补充知识点:

JS中的其他进制数字表示
       我们知道在日常生活中我们常使用的是十进制,而对计算机而言,它只能识别机器语言,也就是说我们常说的二进制语言,只有1 和 0 构成,了解的同学应该知十六进制( 0X)、 八进制(0)、  二进制(0b  ),但是不是所有的浏览器都支持这些数据格式,可能会将其解析为十进制或者八进制,此时也要进行进制之间的相互转换。
       在JavaScript 我们可以在parseInt (  ) 中传递一个第二个参数,来指定数字的进制。
例如,  a=parseInt( a, 10);   a为一个十进制的数字

3.其他数据类型转换为Boolean(布尔值)

使用Boolean (  )函数

  1. 数字   转  布尔    除了0   和  NaN其余都是  true   非空即true
  2. 字符串  转  布尔  除了空串其余都是  true
  3. null  和   undefined 都会转换为  false
  4. 对象也会转换为true

       细心的同学可能会发现上文没有介绍将其他数据类型转化内 undefined  与  null的方法,在上一篇文章中讲到过,这两种数据类型没有实质性的意义和作用,因此可以这样来理解转换为这两种形式是没有意义的,也就没有定义这种方法。


总结

        以上就是今天所要和大家分享的内容,只讲述了一个小节,但却十分重要,我会尽量描述的详细以此能够帮助到大家,也真心接受有心的同学提出的宝贵意见。另外,依旧诚挚祝福看到这篇文章的你健康快乐、平安喜乐。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值