JS的数据类型

JS中最初有:UndefinedNullBooleanNumberStringObject六种数据类型,后来在es6规范中又添加了Symbol类型,所有目前有其中数据类型,这七种类型又可以分为四类:

  • 基本类型:UndefinedNullBooleanNumber
  • 引用类型:Object
  • 特殊类型:String
  • 特殊类型:Symbol

这几种类型有什么区别

基本类型在内存中拥有固定的大小,比如Number的大小统一为8个字节的浮点数,整数部分的精确范围是正负2的53次方,超过这个范围的,js将无法精确的表示,这也导致js不太适合科学和金融方面的计算。

引用类型的大小不定,并且引用类型的值是可以变的(你可以为对象添加/修改属性等)。

String之所以特殊,是因为它的长度不固定(可以构建任意长度的字符串),但是,又无法修改字符串的值

let str1 = 'hello'

// 这里实际上是构建了一个新的字符串'hello world', 而不是修改了'hello'
str1 = 'hello world' 

所以String可以说是与基本类型相似的不可变的引用类型。

Symbol的实例不是对象:

const s = Symbol()
typeof s // 打印出symbol,说明不是对象

Symbol是一种类似于字符串的数据结构,用于表示独一无二的值。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第2章 基本语法 2.1 概述 基本句法和变量 语句 JavaScript程序的执行单位为行(line),也就是一...
    悟名先生阅读 9,710评论 0 13
  • 官方中文版原文链接 感谢社区中各位的大力支持,译者再次奉上一点点福利:阿里云产品券,享受所有官网优惠,并抽取幸运大...
    HetfieldJoe阅读 5,093评论 0 15
  • 官方中文版原文链接 感谢社区中各位的大力支持,译者再次奉上一点点福利:阿里云产品券,享受所有官网优惠,并抽取幸运大...
    HetfieldJoe阅读 7,307评论 1 17
  • 时光扑面而来,我们终将释怀。 这一切都是最好的安排。 15年初,时隔两年我又再次回到了京城。刚刚被从家里放出来的我...
    少年澈阅读 2,669评论 0 0
  • 作者:玫琳凯赵井香. 微信号:15951919907 摩西奶奶曾说过这样一句经典的话:人生永远没有太晚的开始,...
    赵井香阅读 4,057评论 0 3

友情链接更多精彩内容