js的数据类型可以分为两大类:值类型和引用类型, 值类型传统的有五种: Undefind, Null ,Number , Boolean,String; es6新增 symbol 和 biglnt
引用类型有: Object , Array, Function,Data等
两种数据区别: 1、存储位置不同,值类型数据存在栈中,而引用类型数据存储在堆中,并且不能直接访问数据在堆空间的位置只能操作对象在栈中的引用地址 2、内存分配方式不同,值类型数据变量大小固定,操作简单,所以放入栈中;引用类型数据大小不固定,将它们存储到堆中,由他们自己申请空间大小; 3、参数传递不同,值类型只是把变量里的数值传递给参数,然后和参数互不影响; 引用类型对象里的变量的值是这个对象在堆内存中的内存地址
相关拓展: Boolean
除了下述 6 个值转换结果为 false,其他全部为 true:
- undefined
- null
- -0
- 0或+0
- NaN
- ''(空字符串)
记录的不对的话请指正