JS-数据类型之数据类型转换

JavaScript中的数据类型转换是将一个数据类型的值转换为另一个数据类型的过程。以下是JavaScript中常见的数据类型转换和相应的示例代码:

1、隐式类型转换(Implicit Type Conversion)

隐式类型转换是 JavaScript 在某些上下文中自动进行的,无需明确的代码操作。

示例 1:数值和字符串的隐式转换 + - * /

var num = 10;
var str = "20";
num + str; // 隐式将 num 转换为sting 再进行字符串拼接 输出 "1020"
num - str // 隐式将 str 转换为number 再运算 输出 -10
num * str   // 隐式将 str 转换为number 再运算 输出 200
num / str   // 隐式将 str 转换为number 再运算 输出 0.5

由此看出在运算时有一边为string时用 + 运算,会把另一个转为string
剩下的者是将两侧都转为number

示例 2:布尔和数值的隐式转换

var bool = true;
var num = 10;
var result = bool + num; // 隐式将 bool 转换为数值
console.log(result); // 输出 11

2、显式类型转换(Explicit Type Conversion)

显式类型转换是通过一些内置函数或操作符来显式地将一个数据类型转换为另一个数据类型。

1)转换为数字(调用Number(),parseInt(),parseFloat()方法)
2)转换为字符串(调用.toString()或String()方法)
3)转换为布尔值(调用Boolean()方法)

示例 1:转为数值

var str = "10";
Number(str); // 使用 Number 函数进行转换 输出 10
Number(true) // 1
Number('123s')  // NaN
Number({})  //NaN

parseInt(string,radix):解析一个字符串并返回指定基数的十进制整数,radix是2-36之间的整数,表示被解析字符串的基数。
parseInt('2') //2
parseInt('2',10) // 2
parseInt('2',2) // NaN
parseInt('a123') // NaN 如果第一个字符不是数字或者符号就返回NaN
parseInt('123a') // 123

parseFloat(string):解析一个参数并返回一个浮点数
parseFloat('123a')  // //123
parseFloat('123a.01') //123
parseFloat('123.01')  //123.01
parseFloat('123.01.1')  //123.01

为何Number({})返回NaN,或者想详细了解Number方法的可以看我的另一篇文章,JS-数据类型之数字(Number)

示例 2:转为字符串

var num = 10;
String(num); // 使用 String 函数进行转换 // 输出 "10"
String(true) //'true'
String([]) //''
String(null)  //'null'
String(undefined)  //'undefined'
String({})  //'[object Object]'

示例 3:转为布尔

var num = 0;
Boolean(num); // 使用 Boolean 函数进行转换 输出 false

Boolean('') //false
Boolean(1) //true
Boolean(null) //false
Boolean(undefined) //false
Boolean(NaN) //false
Boolean({}) //true
Boolean([]) //true

这些示例展示了常见的数据类型转换方式,但需要注意转换的结果可能会受到具体的值和上下文的影响。在实际开发中,根据需求选择适当的类型转换方式是至关重要的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值