说明(2017.3.31):

1. 画图:

  var num = 123;

  var num2 = num;

 值类型赋值的存储特点:将变量num内的数据全部拷贝一份,存储给新的变量num2,内存中有2个数据。

2. 画图:

    var o = {name: "张三"};

    var obj = o;

 引用类型赋值的特点:将变量o的引用(地址)拷贝一份,所以新的变量obj也指向了这个对象{name: "张三"},内存中只有一个数据。

 但是这样有个问题,如果修改了obj里的name属性,会影响到o里面的内容。就需要引出深拷贝和浅拷贝的问题。

JavaScript高级 面向对象(6)--值类型与引用类型的存储特征的更多相关文章

  1. C# 面向对象8 值类型和引用类型

    值类型和引用类型 概念 示意图: 1.值类型,在栈中开辟一块空间,存储 2.引用类型,在堆中开辟一块空间,存储数据,然在栈中开辟一块空间存储堆中的数据的地址

  2. .Net Framemwork 之 值类型和引用类型的存储

    C#把数据类型分为两种:值类型 和 引用类型.值类型存储在堆栈中,而引用类型存储在托管堆上. 一.值类型和引用类型变量的存储 首先,变量是存储信息的基本单元,而对于计算机内部来说,变量就相当于一块内存 ...

  3. JavaScript高级 面向对象(12)--引用类型值类型作为参数传递的特性

    说明(2017-4-2 18:27:11): 1. 作为函数的参数,就是将函数的数据拷贝一份,传递给函数的定义中的参数. 函数foo()在调用的时候,做了两件事: (1)函数在调用的时候,首先需要将参 ...

  4. JavaScript数据类型--值类型和引用类型

    值类型:也称为原始数据或原始值(primitive value). 这类值存储在栈(stack)中,栈是内存中一种特殊的数据结构,也称为线性表,栈按照后进先出的原则存储数据,先进入的数据被压入栈底,最 ...

  5. JavaScript中值类型和引用类型的区别

    JavaScript的数据类型分为两类:原始类型和对象类型.其中,原始类型包括:数字.字符串和布尔值.此外,JavaScript中还有两个特殊的原始值:null和undefined,它们既不是数字也不 ...

  6. JavaScript 值类型和引用类型的初次研究

    今天遇到一个坑,具体的不多说,直接上代码 var a = [ [],[],[1,2,3] ] var b = ['颜色','大小','尺寸'] var arr = [] for(let i = 0; ...

  7. JavaScript中值类型与引用类型

    JavaScript中的变量类型有哪些? 值类型:字符串(string).数值(number).布尔值(boolean).null.undefined 引用类型:对象(Object).数组(Array ...

  8. JavaScript值类型和引用类型有哪些

    JavaScript值类型和引用类型有哪些 (1)值类型:数值.布尔值.null.undefined. (2)引用类型:对象.数组.函数.

  9. javascript 值类型和引用类型

    值类型 1. 值类型:string/number/boolean/undefined: 2. 存储:值类型的数据,存储的是数据本身的变量: 3. 赋值:直接将存储的数据复制一份进行赋值,两份数据在内存 ...

随机推荐

  1. Loadrunner脚本编程(3)- 检查点,关联等函数

    http://www.360doc.com/content/10/0806/13/1698198_44078093.shtml 1.  错误预防和恢复 参数默认是用{}括起来的,但也可以指定用< ...

  2. jQuery正则:电话、身份证、邮箱简单校验

    if (!(/^1[3,5,6,7,8,9]\d{9}$/).test(e.detail.value.data_phone)) { wx.showToast({ title: '请输入有效11位手机号 ...

  3. HDU----专题训练

    Problem A Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 20000/10000K (Java/Other) Total Sub ...

  4. Python练习笔记——编写一个阶乘函数

    当输入一个数字时,函数自动计算该数的 阶乘 def factorial(num): j = 1 for i in range(1,num+1): j = j*i print(j) num = int( ...

  5. Aixs2 使用总结,持续更新中 ...

    参考博客:http://zhangjunhd.blog.51cto.com/113473/23692     消息交换模式. 目前Axis2支持三种模式:In-Only.Robust-In和In-Ou ...

  6. php 数组与数组 的交集和差集

    注意,必须是第一个参数的数组的长度比较长才可以使用 $a1=array("0","1","2","3"); $a2=ar ...

  7. java日志-纯Java配置使用slf4j配置log4j(转)

    工程目录如下 代码里面用的是slf4j,但是想要用log4j来管理日志,就得添加slf4j本来的jar,然后添加log4j和slf4j箱关联的jar即可. 如果是maven项目的话添加下面的依赖即可 ...

  8. 阿里云-DRDS(转)

    分库分表 DRDS 在后端将数据量较大的数据表水平拆分到后端的每个 RDS 数据库中,这些拆分到RDS中的数据库被称为分库,分库中的表称为分表.DRDS 由每个分库负责每一份数据的读写操作,从而有效的 ...

  9. PHP通过__call实现简单的AOP(主事务后的其他操作)比如前置通知,后置通知

    /** * person class */ class Person { /** * person class -> function say */ public static function ...

  10. linux下使用find命令根据系统时间查找文件用法

    这篇文章主要为大家介绍了find 命令有几个用于根据您系统的时间戳搜索文件的选项. 这些时间戳包括 mtime 文件内容上次修改时间 atime 文件被读取或访问的时间ctime 文件状态变化时间 m ...