JS系列之数据类型转换(强制类型转换)
2021/9/14 23:34:56
本文主要是介绍JS系列之数据类型转换(强制类型转换),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
js基本数据类型:Number,String、Number、Null、Undefined,知道了这些的话直接开干~
将数据类型转换成String
转换方式1:使用toString()方法
转换方式2:使用String()函数
let a = 123; console.log(a.toString()) // '123' let b = true console.log(b.toString()) // 'true' let c = null; console.log(c.toString()) // 报错 let d = undefined console.log(d.toString()) // 报错 let e = 123; console.log(String(d)) // '123' let f = true console.log(String(f)) // 'true' // null和undefined调用toString()或String()时不一样的 let g = null; console.log(String(e)) // 'null' let h = undefined console.log(String(f)) // 'undefined'
总结:
1.调用toString()和String()会返回string类型的数据,不会改变原本的数据类型
2.toString() 不能将null 、undefined 转为字符串,如果需要将null和nudefined转为字符串可以使用String ()
将数据类型转成成Number类型
转换方式1:使用Number()方法
转换换式2:使用parseInt() 方法/parseFloat()方法
let a = '123' console.log(Number(a)) // 123 // 空字符串 let b = '' console.log(Number(b)) // 0 let c = true console.log(Number(c)) // 1 let d = false console.log(Number(b)) // 0 let e = null; console.log(Number(e)) // 0 let g = undefined console.log(Number(g)) // NaN // 如果纯数字和Number方法作用时一样的 let h = '123' console.log(parseInt(h)) // 如果不是纯数字则只取整数数字 let i = '123.12px' console.log(parseInt(h)) // 123 // parseFloat() 小数也会保留 let j = '1321.144px' console.log(parseFloat(i)) // 1321.144 //如果对非String使用parseInt()获知parseFloat() // 他会先将其转换成String然后再进行操作 let k = true console.log(parseInt(k)) // NaN let l = null console.log(parseInt(l)) // NaN let n = undefined console.log(parseInt(n)) // NaN
总结:
1.纯数字的字符串 直接通过Number()函数进行转换
2.不是纯数字使用Number转换的话,类型变为NaN, 但是数据类型还是number类型
3.如果字符串里面都是空格,没有字符则转换成 0
4.布尔值转数字 true 为 1 false 为 0
5.null 转 数字 null 为 0
6.undefined 为 NaN
对字符串特殊处理的连个方法
parseInt()
1.对纯数字的字符串作用与Number()一致
2.非纯数字,不以英文开头则只取整数数字
3.非纯数字,以英文开头则为NaN
4.parseInt()可以用于取整数
parseFloat()
1.对纯数字的字符串作用与Number()一致
2.非纯数字,不以英文开头则取所有数字
3.非纯数字,以英文开头则为NaN
将数据类型转换成Boolean
转换方式:使用Boolean()
let a = 123 console.log(Boolean(a)) // true let b = -123 console.log(Boolean(b)) // true let c = 0 console.log(Boolean(c)) // false let d = NaN console.log(Boolean(d)) // false let e = 'test' console.log(Boolean(e)) // true let f = '' console.log(Boolean(f)) // false let g = null console.log(Boolean(g)) // false let h = undefined console.log(Boolean(h)) // fasle // 对象也为true let i = { name: '法外狂徒', age: 22 } console.log(Boolean(i)) // true
总结:
1.数字类型转布尔类型:除了 0 和NaN, 其余都是true
2.字符串类型转布尔类型:除了空串,其余都是true
3.null和undefined 都会转换为false
4.对象也会转换为 true
结语:
js中的数据类型也就几种,但是类型转来转去的还是有点脑壳疼的,熟悉数据类型的转换,可以让我们写代码的时候不会出现一些小问题,大家平时大家在写bug的时候多多留意,还是没问题的,各位小伙伴们加油哟,祝大家工作顺利~
以上仅为个人见解,若存在错误欢迎指正,谢谢~
这篇关于JS系列之数据类型转换(强制类型转换)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-15useCallback教程:React Hook入门与实践
- 2024-11-15React中使用useContext开发:初学者指南
- 2024-11-15拖拽排序js案例详解:新手入门教程
- 2024-11-15React中的自定义Hooks案例详解
- 2024-11-14受控组件项目实战:从零开始打造你的第一个React项目
- 2024-11-14React中useEffect开发入门教程
- 2024-11-14React中的useMemo教程:从入门到实践
- 2024-11-14useReducer开发入门教程:轻松掌握React中的useReducer
- 2024-11-14useRef开发入门教程:轻松掌握React中的useRef用法
- 2024-11-14useState开发:React中的状态管理入门教程