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的时候多多留意,还是没问题的,各位小伙伴们加油哟,祝大家工作顺利~
以上仅为个人见解,若存在错误欢迎指正,谢谢~