XM的小窝


 

【笔记】JS中数据类型的转换关系

1. 数字类型转字符串类型:
toString()方法:
var num=114514;
console.log(num.toString());//转换为字符串

String()方法:
var num=114;
console.log(String(num));//转换为字符串

隐式转换:

var num=111;
console.log(" "+num);//通过字符串拼接的方法来转换

字符串的隐式转换规律:

  • 字符串+数字=字符串

2.字符串类型转数字类型:

parseInt()方法:

var num=1919810;
console.log(parseInt(num));//转换为数字

注:parseInt转换时如遇到小数点,则抛弃小数点右边所有的字符,只取整数部分,如遇到字母等其他符号,则立即停止并输出整数部分或NaN。

例:console.log(parseInt('1234abcd.ad'));//转换为数字,抛弃数字后面的其他符号
console.log(parseInt('abc1234ad.ad'));//如果字符串第一位不是数字,则为NaN

ParseFloat方法:

console.log(parseFloat('123.4'));//转换为数字,输出为123.4
console.log(parseFloat('123.1a4'));//转换为数字,输出为123.1
console.log(parseFloat('abc1234ad.ad'));//如果字符串第一位不是数字,则为NaN

隐式转换:
var str='123';
console.log(str-0);//通过减法来转换
console.log(str*1);//通过乘法/除法来转换

数字的隐式转换规律:

  • 字符串-数字=数字
  • 字符串*数字=数字
  • 字符串/数字=数字

其他类转换为布尔类型:

布尔类型的转换非常简单,通过使用Boolean()方法即可实现转换:

规则:

  • NaN,undefined,null,0 和 ' ' 转换为Boolean为 False
  • 其他如字符串(除了' '),数字类型(除了0)都为 True

console.log(Boolean(' '));//False
console.log(Boolean(0));//False
console.log(Boolean(NaN));//False
console.log(Boolean(undefined));//False
console.log(Boolean(null));//False
console.log(Boolean('你好'))//true
console.log(Boolean(123))//true
console.log(Boolean('dd'))//true

附:

==判断运算符计算时也有隐式转换的一个过程(字符串转换为数字进行比较)
全等===则不转换

例:

console.log(1 == 1)//True
console.log(11 == '11')//True
console.log(11 === '11')//False

点赞
  1. Img说道:
    Google Chrome Windows 10

    图片:图片

发表评论

电子邮件地址不会被公开。必填项已用 * 标注