数据类型的转换(3种情况)

Posted chorkiu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据类型的转换(3种情况)相关的知识,希望对你有一定的参考价值。

 JS中类型转换只有三种情况,分别是

  • 转换为布尔值 【 Boolean()】
  • 转换为数字 【 Number()、parseInt()、parseFalse() 】
  • 转换为字符串【 String() 、str.toString() 】
原始值 转换目标 结果
number 布尔值 除了0,-0,NaN都为true
string 布尔值 除了空字符串都为true
undefined、null 布尔值 false
引用类型 布尔值 true
number 字符串   5 =》‘5‘
Boolean、函数、Symbol 字符串  "true" 
数组 字符串  [1,2] => "1,2" 
对象 字符串  "[Object Object]" 
 string 数字  ‘1‘ => 1,
 数组 数字   空数组为0,存在一个元素且
为数字转载数字,替他情况为NaN
null  数字 
除了数组的引用类型  数字  NaN 
Symbol  数字 抛错 

 

转换为Boolean

在条件判断时,除了undefined、null、false、NaN、‘ ‘、0、-0,其他所有值都转为true,包括所有对象

数据类型转化方法

一、字符串转为数字有三种方法(Number、parseInt、parseFalse

var a = ‘hello‘
var a1 = Number(a)
var a2 = parseInt(a)
var a3 = parseFloat(a)
console.log(a1)
console.log(a2)
console.log(a3)
console.log(typeof(a1))
console.log(typeof(a2))
console.log(typeof(a3))

  结果

技术图片

var a = ‘-22.5text‘
var a1 = Number(a)
var a2 = parseInt(a)
var a3 = parseFloat(a)
console.log(a1)
console.log(a2)
console.log(a3)
console.log(typeof(a1))
console.log(typeof(a2))
console.log(typeof(a3))

  结果

技术图片

总结:1、Number、parseInt、parseFalse三者都是适用于所有字符串不含数字字符串转化为NaN

   2、Number() 含数字字符串但是又其他字符串就会转化为NaN

      parseInt()含数字字符串转为数字本身(整数,不带小数点后数字,带负数)

                parseFalse()含数字字符串转为数字本身(带小数点后数字、负数)

二、字符串转为布尔值一种方法方法(Boolean)

var a  = ‘hello‘
var a1 = Boolean(a)
var b = ‘‘
var b1 = Boolean(b)
console.log(a1)
console.log(typeof(a1))
console.log(b1)
console.log(typeof(b1))

  结果

技术图片

总结:除了“”之外的所有字符串转化为布尔值都是true

 

 


以上是关于数据类型的转换(3种情况)的主要内容,如果未能解决你的问题,请参考以下文章

类型转换

java在啥情况下会发生自动类型转换

Java什么情况下数据类型可以自动转换?什么情况下需要强制转换?

Java什么情况下数据类型可以自动转换?什么情况下需要强制转换?

2.6 C#的数据转换

类型转换