美文网首页
js有哪些数据类型,以及js数据类型之间如何互相转化

js有哪些数据类型,以及js数据类型之间如何互相转化

作者: 萤火虫叔叔 | 来源:发表于2020-06-16 22:32 被阅读0次

一、结论环节

通过typeof,可以看到,js中一共有6种数据类型:numberstringbooleanobjectundefinednull

console.log(typeof(0)) //number
console.log(typeof('')) //string
console.log(typeof(true)) //boolean
console.log(typeof({})) //object
console.log(typeof(undefined)) //undefined
console.log(typeof(null)) //null

//注意,NaN属于number,NaN表示非数字
console.log(typeof(NaN)) //number

二、实验环节

1. 其他类型转成string

string类型最神通广大,所有类型都可以转化成string

console.log(String(0)) //0
console.log(String(true)) //true
console.log(String({})) //[object Object]
console.log(String(undefined)) //undefined
console.log(String(null)) //null

//ps,如果想以json字符串的方式打印出object类型的数据,可以
console.log(JSON.stringify({name: 'jack'})) // 打印:{"name":"jack"}
2. 其他类型转成number

2.1 stringnumber:如果string是一个只包含数字的字符串,则直接转成该字符串表示的数字,如果包含其他字符,则为NaN,注意,空字符串也能转成0
2.2 booleannumbertrue转成1false转成0.
2.3 objectundefinednullnumber:均为NaN

console.log(Number('')) //打印:0
console.log(Number('        ')) //打印:0
console.log(Number('0')) //打印:0
console.log(Number('123')) //打印:123
console.log(Number('abc')) //打印:NaN
console.log(Number(true)) //打印:1
console.log(Number({})) //打印:NaN
console.log(Number(undefined)) //打印:NaN
console.log(Number(null)) //打印:NaN
3. 其他类型转成boolean

3.1 numberboolean0转成false,其余的转成true
3.2 stringboolean:空字符串转成false,其余的转成true
3.3 所有的object都转成trueundefinednull转成false

console.log(Boolean(0)) //打印: false
console.log(Boolean(-999)) //打印: true
console.log(Boolean('')) //打印: false
console.log(Boolean('0')) //打印: true
console.log(Boolean({})) //打印: true
console.log(Boolean(undefined)) //打印: false
console.log(Boolean(null)) //打印: false

console.log(Boolean('      ')) //打印: true

值得注意的是,空格,制表符,换行符,回车符等空白符转成number都是0,但是如果转成boolean,却是true

console.log(Number('')) //打印: 0
console.log(Number('  ')) //打印: 0
console.log(Number('\t\n\r ')) //打印: 0
console.log(Boolean('')) //打印: false
console.log(Boolean('  ')) //打印: true
console.log(Boolean('\t\n\r ')) //打印: true
4. 其他类型转成object

只有json字符串可以转成object

console.log(JSON.parse("{\"name\":\"jack\"}")) //打印:{ name: 'jack' }

留一个作业,下面这两个的打印结果是什么?

console.log('' == true)
console.log('  ' == true)

答案:传送门


如有疑问,看下图找答案!


相关文章

  • js有哪些数据类型,以及js数据类型之间如何互相转化

    一、结论环节 通过typeof,可以看到,js中一共有6种数据类型:number,string,boolean,o...

  • JS题集

    1.JS有哪些数据类型? JS有七大数据类型: String, Symbel, Number, Boolean, ...

  • js基础面试题

    面试题:延迟加载JS有哪些方式? 面试题:JS数据类型有哪些? 面试题:JS数据类型考题 考题一: 考题二: 面试...

  • JS数据类型具体分析

    在前面的一个章节中,我们讲了JavaScript数据类型有哪些以及他们之间的区别。在其中我提到过JS 数据类型有分...

  • JS 高频面试题汇总

    # 说一下JS 中的数据类型有哪些 JS 数据类型包括 基本 / 引用 / 特殊 数据类型: 基本数据类型:Str...

  • JS 面试题汇总

    说一下JS 中的数据类型有哪些 JS 数据类型包括 基本 / 引用 / 特殊 数据类型: 1.基本数据类型:Str...

  • js问答题

    index js问答题 __小胖子 1.JS的数据类型有哪些?typeof运算符的执行结果都有哪些数据类型? (第...

  • 内置对象

    js的内置对象 内置对的有11个,Global对象不列入内置对象。 js的数据类型 问:js中数据类型有哪些?st...

  • 前端常见面试题及详解

    1、js有哪些数据类型 基本数据类型:String,Boolean, Number, Null, Undefine...

  • js重点面试题

    1.js中有哪些数据类型,并解释清楚原始数据类型和引用数据类型 js中共有null , undefined , s...

网友评论

      本文标题:js有哪些数据类型,以及js数据类型之间如何互相转化

      本文链接:https://www.haomeiwen.com/subject/fdudxktx.html