显式类型转换是指使用函数主动将JS数据类型转化,而隐式类型转化是指在程序运行中程序自动转化类型的情况。 在了解到JS中的隐式类型转化时,需要了解到两个问题: 下面将分别进行解答:
JS显式类型转换及关于隐式类型转化的底层逻辑
在提隐式转化之前,先看一下显式类型转化与隐式类型转化的区别:
console.log(Number(true)) // 1 发生显示类型转化 console.log(true - false) // 1-0=1 发生隐式类型转化
显式类型转换的几种函数:
注意:在JS数据在转化为数值型时,没有匹配的数值那么就是NaN 1.任何数跟NaN算数运算都是NaN 2.任何数跟NaN比较都是false 3.NaN不等于NaN
隐式类型转化
在JS底层中,什么数据可以进行运算?
在JS底层中只有基本类型的数据才能进行运算。 拓展:JS基础类型(boolean、string、number、undefined、null) JS引用类型(array、object、function)
为什么会有隐式转化?
所有引用类型的数据,需要运算时候;先需要转化为基本类型数据;再运算。 所有引用类型数据在转化时只能先转为字符串;最后再有字符串转为其他类型。 因为浏览器默认数据就是字符串;所以只能转字符串,在其他运算符作用下转化为其他类型。
举例:
var res = ['111','0',12] + ['11','aaa'] // + 连接符 // ['111','0',12] --> '111,0,12' // + 为连接符号 // ['11','aaa'] ----> '11,aaa' // res = '11,0,1211,aaa' // 代码中将数组转化为字符串,其中+为连接符
var res = ['111','0',12] - ['11','aaa'] // ['111','0',12] ----> '111,0,12' // ['11','aaa'] ----->'11,aaa' // ---> '111,0,12' - '11,aaa' // ---> NaN -NaN // res = NaN // 代码中先将数组转化为字符串,再将字符串转化为number
var res = ['23',23,true] + {name:'aaa'} + 1 // ['23',23,true] ----> '23,23,true' // {name:'aaa'} ----> '[object Object]' // res = '23,23,true[object Object]1' // 在默认隐式转化中;所有的对象都转化为 '[object Object]'
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算