概述
在 JavaScript 中数据被分成了不同的类型,如数值、字符串、布尔值、undefined,在实际编程的过程中,不同数据类型之间存在着转换的关系。
那什么是隐式转换呢?某些运算符被执行时,系统内部自动将数据类型进行转换,这种转换称为隐式转换。
+号两边只要有一个是字符串,都会把另外一个转成字符串
除了+以外的算术运算符 比如 - * / 等都会把数据转成数字类型
+号作为正号解析可以转换成数字型,任何数据和字符串相加结果都是字符串。
例如:
console.log(11 + 11) //22
console.log('11' + 11) //1111
console.log(11 - 11) //0
console.log('11' - 11) //0
console.log(1 * 1) //1
console.log('1' * 1) //1
console.log(typeof '123') //string
console.log(typeof + '123') //number
console.log(+'11' + 11) //22
了解了隐式转换,那我们来说说显示转换。编写程序时过度依靠系统内部的隐式转换是不严禁的,因为隐式转换规律并不清晰,大多是靠经验总结的规律。 为了避免因隐式转换带来的问题,通常根逻辑需要对数据进行显示转换。自己写代码告诉系统该转成什么类型。
转换为数字型的方法有:
// 1 转换为数字型
// 1.1 Number()
let str = '123'
console.log(typeof Number(str)) //number
console.log(Number('aaa')) //NaN
console.log(Number('啊啊啊')) //NaN
console.log('----------------------------')
// 1.2 parseInt() 保留整数
console.log(parseInt('12px')) //12
console.log(parseInt('12.56')) //12
console.log(parseInt('abcd12.56px')) //NaN
// 1.3 parseFloat() 保留小数
console.log(parseFloat('12.56')) //12.56
console.log(parseFloat('12.56px')) //12.56
console.log(parseFloat('abcd12.56px')) //NaN
console.log(parseFloat('13')) //13
最后
以上就是笑点低月光为你收集整理的如何正确理解隐式转换和显示转换的全部内容,希望文章能够帮你解决如何正确理解隐式转换和显示转换所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复