前端之类型转换(二)

你好,欢迎打开我的博客,阿雨每天与你分享许多有趣新鲜的knowledge!
阿雨博客CSS部分更新完了,接下来是有趣的JS部分,就跟随阿雨的步伐走进web世界吧!
一,转换为数字
常用值转换为数字说明如卜,
1 => 1 => n
0 true => 1
false Wfl => 0 => 0
Undefined => NaN
null => 0
NaN => NaN
Infinity => Intinny 把值转换为数字的常用方法有以下3种.
(1) parselnt(): 可以把值转换为整数
(2)¥ parseFloat( );可以把值转换为浮点数
(3)使用乘号运算符
示例
parslent()方法可以把可以把前面分析合法的数字字符全部转换为数值并返回
在这里插入图片描述
如果是0开头的的数字字符串,则parslent把它作为八进制数字处理,先把它转换为八进制的数值,再转换为十进制进行数值返回
如果是0%开头的的数字字符串,则parslent把它作为十六进制数字处理,先把它转换为十六进制的数值,再转换为十进制进行数值返回
在这里插入图片描述
parselnt也支持基模式,可以把二进制,八进制,十六进制转化为整数,基模式由parselnt的第二个参数指定
在这里插入图片描述
把二进制,八进制,十六进制数字字符转换为十进制整数
在这里插入图片描述
如果第1个参数不是十进制的值,为了避免被认为八进制数字,向右应指定第二个参数值为0,即显式定义基模式
在这里插入图片描述
parselnt的参数必须是十进制的字符串,而不能使用八进制,十六进制的数字字符串,同时对于数字前的数字0会省略,对于十六进制的数字会返回
在这里插入图片描述
如果变量为1,则变量会被JS自动转换为数值,乘以1之后,结果没有发生变化,但是值的类型变化为数值,如果值无法被转换为合法的数值,则返回NaN。

在这里插入图片描述
转换为布尔值
常用值转换为布尔值说明如下。
1 0 “” true false undefined null NaN
rue => false => true => false => false => false => false => false
Infinity
=> true
把值转换为布尔值的常用方法有以下两种。
〜使用双重逻辑非。
~ 使用Boolean。函数。

示例

一个逻辑非运算符(!)k可以把值转换成布尔值并取反,两个逻辑非运算符就可以把值转换为正确的布尔值
在这里插入图片描述
使用Boolean()函数可以强制把值转换为布尔值
在这里插入图片描述
转换为对象
使用new命令调用String,Number,Boolean类型函数,可以把字符串,数字,布尔值转换为对应类型的对象

示例在这里插入图片描述

转换为简单值
在逻辑运算环境中.所有复合型数据对象转换为布尔值的都为true
在数值运算教环境中.对象会=试调用valueOf()方法,如果不成功,再调用toStnng()方荏,获取一个
’I紀该值转换为数字。如果转换成功,则取用该值参与运算:如果转换失败,则会NaN参与运算
在字符运算环境中,对象会调用toStringO方法获取对象的字符串表示,以此作为转麥的值:数组转换为简单值时,会调用toStringO方法获取一个字符串表示,然后根据具体的运算环境,再把字符串转换为对应类型的简单值。

  • 如果为空数组,则转换为空字符串。
  • 如果仅包含一个元素,则取该元素值。
  • 如果包含多个元素,则转换为多个元素的值组合的字符串,并以逗号分隔。

函数转换为简单值时,会调用toStringO方法获取字符串表示。
对于普通函数.则返回的是函数代码,然后根据不同运算环境,再把该字符串表示转换为对应类型的值。

示例

下面的代码创建3个不同类型的对象,然后参与逻辑与运算,因为不管其值是什么凡是对象转换为布尔值的都为true,所以才会看到不同的显示结果。
在这里插入图片描述
使用Boolean类型函数把布尔true转换为布尔值对象,然后再通过b—0数值运算,把布尔值对象转换为1
在这里插入图片描述
当对象与数值进行加法运算时,则会尝试把对象变为数值,然后参与求和运算。如果不能转换为有效数值,则执行字符串连接操作
在这里插入图片描述

当对象与字符串进行加法运算时,直接转换为字符串,然后执行连接操作
在这里插入图片描述
当对象与数值进行比较运算时,则尝试把对象转换为数值,然后参与比较运算。如果不能转换为数值,则字符串进行比较运算
在这里插入图片描述
强制类型转换
JavaScript支持使用下面的函數强制类型转换。

  1. Boolean(value):把参数值转换为布尔型值。
  2. Number( value): 把参数值转换为数字。
  3. String(value):把参数值转换为字符串。

在这里插入图片描述

当值包含至少有一个字符的字符串、非0数字或对象时,Boolean()强制转换为true,
如果字符是空字符串、数字 0、undefined 或 null, Boolean()强制转换为 fialse.
Number强制转换与parseInt()fD parseFloat()方法的处理方式不同,Numberl)转换的是整体而不是局部,在这里插入图片描述
在JS中,使用强制类型转换非常有用,但是一定要具体应用合适的环境。
如果有哪里不会的可以随时评论,可以一起讨论解决问题
所有的伟大,都于孤独中诞生

你若盛开,芳香自来

我是阿雨,一起加油。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值