首页 > Web开发 > 详细

js变量传递类型

时间:2019-11-11 18:57:21      阅读:109      评论:0      收藏:0      [点我收藏+]
有博客解释:在程序设计中,对于函数调用通常有一下几种方法,可以归纳为 值引用和 地址引用(对象引用), 按地址传递,则传递是原来变量的地址。如果对新变量做修改,那么原来的参数也会跟着变化。 找了很多博客、回答来看,终于成功让我自己混淆了,所以开始好好根据书中介绍来做理解总结。
javascript高级程序设计这本书中介绍,ECMAScript变量可能包含两种不同数据类型的值:基本类型 和 复杂类型,其中,基本类型指的是简单的数据段,引用类型指的是那些可能由多个值构成的对象。??必须注意的是,ECMAScript中所有函数的参数都是按值传递的,也就是说把函数外部的值复制给函数内部的参数,就和把一个变量复制到另一个变量一样。可以这样理解,基本类型值的传递就如同基本类型变量的复制,引用类型值的传递就如同引用类型变量的复制。严格来说,访问变量有按值和按引用两种方式,而参数只能按值传递。
  • 基本数据类型:Undefined、Null、Boolean、Number、String,这5种

  • 引用类型:其值是保存在内存中的对象 Object

怎样解释上图现象?

对象是引用类型的,变量中仅仅保存的是对象的指针,只要对象变量不变化,指针不变化,值都不会发生改变,但是如果需要对象发生改变,则可以从变量的属性入手

类似地,const定义的变量应该是不可以改变的,但是改变对象的属性却使得对象发生了改变,因此可以得出结论,const保存的变量的指针,只要定义的引用类型指针不发生改变,其他任何形式的改变都是允许的。

js变量传递类型

原文:https://www.cnblogs.com/Pecci/p/11820449.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!