位置: 编程技术 - 正文

JavaScript中的原始值和复杂值(js原型作用)

编辑:rootadmin

推荐整理分享JavaScript中的原始值和复杂值(js原型作用),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:javascript原型对象,js的原型,javascript的原型,原型链,有什么特点?,js中的原型是什么,javascript中的原型和原型链,javascript中的原型和原型链,javascript中的原型和原型链,javascript原型,内容如对您有帮助,希望把文章链接给更多的朋友!

前面的话

  javascript的数据类型可以分为两种:原始类型和引用类型。原始类型也称为基本类型或简单类型,javascript基本数据类型包括Undefined、Null、Boolean、Number和String五种,而引用类型也称为复杂类型,在Javascript中是Object。与此相对应,它们的值也分别被称为原始值和复杂值

特性

原始值(primitive value)

简单的说:原始值是固定而简单的值,是存放在栈(stack)中的简单数据段,也就是说,它们的值直接存储在变量访问的位置.

  原始值是表示Javascript中可用的数据或信息的最底层形式或最简单形式。原始类型的值被称为原始值,是因为它们是不可细化的。也就是说,数字是数字,字符是字符,布尔值则是true或false,null和undefined就是null和undefined。这些值本身很简单,不能表示由其他值组成的值

有哪些类型是原始类型呢?

原始类型(primitive type)有以下五种类型:Undefined,Null,Boolean,Number,String

我们可以使用typeof来判断一个是否在某个类型的范围内.

typeof运算符

对变量或值使用typeof运算符将会返回下列值之一:

注意:

1.返回值为字符串类型.

2.和原始类型比,还差了个null,这个比较特殊,使用typeof(null),返回的是"object",我们将null理解成是object的占位符.

复杂值

  复杂值可以由很多不同类型的javascript对象组成。复杂对象其在内存中的大小是未知的,因为复杂对象可以包含任何值,而不是一个特定的已知值

JavaScript中的原始值和复杂值(js原型作用)

存储方式

栈存储

  因为原始值占据空间固定,是简单的数据段,为了便于提升变量查询速度,将其存储在栈(stack)中

堆存储

  由于复杂值的大小会改变,所以不能将其存放在栈中,否则会降低变量查询速度,因此其存储在堆(heap)中,存储在变量处的值是一个指针,指向存储对象的内存处

访问方式

按值访问

  原始值是作为不可细化的值进行存储和操作的,引用它们会转移其值

引用访问

  复杂值是通过引用进行存储和操作的,而不是实际的值。创建一个包含复杂对象的变量时,其值是内存中的一个引用地址。引用一个复杂对象时,使用它的名称(即变量或对象属性)通过内存中的引用地址获取该对象值

比较方式

  原始值采用值比较,而复杂值采用引用比较。复杂值只有在引用相同的对象(即有相同的地址)时才相等。即使是包含相同对象的两个变量也彼此不相等,因为它们并不指向同一个对象

动态属性

  对于复杂值,可以为其添加属性和方法,也可以改变和删除其属性和方法;但简单值不可以添加属性和方法

  复杂值支持动态对象属性,因为我们可以定义对象,然后创建引用,再更新对象,并且所有指向该对象的变量都会获得更新。一个新变量指向现有的复杂对象,并没有复制该对象。这就是复杂值有时被称为引用值的原因。复杂值可以根据需求有任意多个引用,即使对象改变,它们也总是指向同一个对象

包装类型

  原始值被当作构造函数创建的一个对象来使用时,Javascript会将其转换成一个对象,以便可以使用对象的特性和方法,而后抛弃对象性质,并将它变回到原始值

详解JavaScript UTC时间转换方法 一、前言1、UTC:UniversalTimeCoordinated,协调世界时。2、格林尼治标准时(GMT)格林尼治标准时间(GreenwichMeanTime,GMT)是指位于伦敦郊区的皇家格林尼治

7个去伪存真的JavaScript面试题 下面这7个JavaScript面试问题是你应该在面试前先问的。否则,很有可能会浪费你的时间。1.创建JavaScript对象的两种方法是什么?这是一个非常简单的问题

JavaScript类型系统之Object详解 前面的话在javascript中,对象为王;Javascript里的几乎所有东西都是对象或者用起来像对象。理解了对象,就理解了Javascript。在javascript中,引用类型是一

标签: js原型作用

本文链接地址:https://www.jiuchutong.com/biancheng/384742.html 转载请保留说明!

上一篇:理解JS事件循环(js事件循环过程)

下一篇:详解JavaScript UTC时间转换方法(详解中国女足出线形势)

  • 小规模纳税人通用申报表
  • 外籍人员税收优惠政策
  • 一分钟了解货币
  • 国税纳税标准
  • 收到预付款的发票怎么写摘要
  • 违约金收入是否征税
  • 存货项目包括哪些具体内容
  • 电子发票和纸质发票哪个好
  • 外购商品用于营销活动
  • 银联交易手续费
  • 职工在病假领取失业金
  • 总资产现金回收率是什么与什么平均余额的比
  • 核销的方式
  • 研发新产品成功案例简短
  • 企业个人所得税申报系统官网
  • 企业申请核定征收的要求
  • 小规模纳税人进货需要发票吗
  • 税务局代增值税普通发票流程
  • 物业会计科目设置
  • 当月增加的投资性房地产当月提折旧吗
  • 企业出售固定资产取得的净收益应列入的利润表项目是
  • 企业公户转别的公司公户他不给开发票怎么操作?
  • 委托付款分录
  • 年报弥补以前年度亏损了还需要填107040表吗
  • 经营费用包括哪些科目明细
  • 小规模企业年末怎么结转
  • 税收滞纳金能不能超过本金
  • 以前年度损益调整结转到哪里
  • 栈定义代码
  • php网页爬虫
  • Win11怎么设置自启动软件
  • php可以连接access吗
  • cyb2k.exe是安全进程吗 cyb2k进程危险吗
  • intel me有什么用
  • 有销项无进项税务局会怎么罚
  • express框架使用
  • 外籍个人取得的现金住房补贴所得免征个人所得税吗
  • 生产性生物资产折旧计入什么科目
  • Yii2使用表单上传文件的实例代码
  • 残保金解决方案
  • yolov4tiny网络结构
  • css设置背景图片填充
  • 劳务费不足800如何入账
  • 企业转让无形资产取得的收益应计入营业外收入
  • mysql 5.7.22安装教程
  • mysql 提示
  • php的默认网站目录是
  • c语言常用函数用法
  • 没有虚拟化iommu
  • sqlserver数据库中进行查询所使用的语言为
  • 以前年度多计收入今年怎么调整
  • 个人独资企业法主要内容
  • 购入需安装设备的会计分录
  • 房产税应纳税额计算例题
  • 现金支付什么会计科目
  • 增值税发票开错冲红重开如何做会计分录?
  • 所得税需要转本吗
  • 成本利润率多少是正常的
  • 去年印花税今年年初交的税金及附加做今 年可以吗
  • 房地产开发企业资质管理规定
  • 会计中为什么要用黑色笔写
  • 支付兼职人员工资会计处理
  • 客观原因怎么写
  • 收到进项发票不认证抵扣的会计分录
  • mysql触发器语句
  • kill强制结束进程的参数
  • WIN10系统中读卡器驱动的正确安装程序
  • 某网贴出来的u3d面试题目汇总,当时学习下(好多我都不会呢)
  • JavaScript:Array类型全面解析
  • linux shell脚本命令
  • perl cgi
  • cmd for /f
  • 加密批处理代码
  • android iframe
  • 物理引擎百科
  • 12366纳税服务热线存在的问题
  • 怎么看上期留抵税额
  • 北京摇号摇中了能过户吗
  • 赣州买二手房限购吗
  • 20万块手表交多少税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设