美文网首页
JS 里的数据类型转换

JS 里的数据类型转换

作者: 小白兔养家 | 来源:发表于2018-09-15 16:23 被阅读0次
number String boolean Symbol null undefined object
number toString
'' +
Boolean()
String Number('1')
parseInt('1',10)
parseFloat('1.23')
'1' + 0
+ '1'
Boolean()
boolean toString
'' +
Symbol !! +
null 报错
'' +
!! +
undefined 报错
'' +
!! +
object "[object Object]"
'' +
String()
!! +

将其他的数据类型转换为String

// toString
1 + 1 // 2
(1).toString() + '1' // '11'
1 + '1'  // '11'
window.String(1)  // '1'

将其他的数据类型转换成Number

Number('1') 
parseInt('1',10) 
parseFloat('1.23')
'1' + 0 
+ '1'

将其他的数据类型转换为Boolean

// Boolean()
Boolean(1)  // true
Boolean(0) // false
Boolean('') // false
Boolean(' ') // true
Boolean('1') // true
Boolean(null) // false
Boolean(undefined) //false
Boolean({}) // true
Boolean({name: 'frank'})  // true
// !!
!true // false
!!true // true
!! 1 // true
!! 0 // false
!! '' // false
!! '    '  // true
!! {}  // true
!! {name: 'frank'} // true
!! null // false

五个默认为false的falsy值:0,NaN,'',null,undefined
任意对象转换为Boolean均为true

// falsy值
number: 0 / NaN
String: ''
null: 都是false
undefined: 都是false
object: 都是true

Symbol null undefined

需要转为的情况不常见,略

object

内存:
JS 引擎将内存分为代码区数据区, 我们只研究数据区。 数据区分为 Stack(栈内存)Heap(堆内存)。 简单类型的数据(如Number,string等)直接存在 Stack 里, 复杂类型的数据(object对象)是把 Heap 地址存在 Stack 里。
基本类型在栈内存中,对象是复杂类型在堆内存中。

对象的存储方式:
object 是对象的引用,对象的存储方式是在stack内存存储一个地址,形成对对象的引用,地址指向heap内存的某个位置。

垃圾回收:
如果一个对象没有被引用,它就是垃圾,将被回收。

深拷贝VS浅拷贝概念

深拷贝:
基本类型赋值就是深拷贝

// b变不影响a
var a = 1
var b = a
b = 2
a  // 1

浅拷贝

// b变致a变
var a = {name: 'a'}
var b = a
b.name = 'b'
a.name // 也是 'b'

相关文章

  • JS 里的数据类型转换

    JS 里的数据类型转换 Js中的数据类型一共有7种,即number,string,boolean,underfin...

  • 2、强制数据类型转换

    数据类型转换: 在js中,数据类型的转换有两种,分别是自动转换和强制转换 自动转换: 自动转换是用JS进行某些操作...

  • JS里的数据类型转换

    上一篇文章(JS里的数据类型)介绍了js中的数据类型。这篇主要介绍数据类型转换。 一、任意类型转字符串 转换成st...

  • JS里的数据类型转换

    在js中,数据类型转换分为显式数据类型转换和隐式数据类型转换。 1, 显式数据类型转换 a:转数字: 1)Numb...

  • JavaScript的显式转换和隐式转换

    js的显式转换和隐式转换都是数据类型的转换;js的数据类型是弱类型的,即可以给变量赋值为任意的数据类型,当进行运算...

  • javaScript中数据类型转换方法

    JS 数据类型转换 方法主要有三种 转换函数、强制类型转换、利用js变量弱类型转换。 1. 转换函数: js提供了...

  • 数据类型转换

    JS 数据类型转换 方法主要有三种 转换函数、强制类型转换、利用js变量弱类型转换。 1. 转换函数: js提供了...

  • JS隐式数据类型转换

    隐式数据类型转换介绍 前面有总结过 JS数据类型转换 Number(), toString(), parseInt...

  • JS的基本小结

    JS基本输出方式 JS数据类型 变量 常量 变量常量小练习 声明提前 隐式转换 显示转换/强制转换

  • JS 里的数据类型转换

    JS 里的数据类型转换 某类型转换为字符串的方法eg.var a=4 用 变量.toString()方法,a.to...

网友评论

      本文标题:JS 里的数据类型转换

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