JS之数据_变量_内存v(**V**)v(3)

 1  <script >
 2     //*Q:在JS调用函数传递的参数时,到底是值传递还是引用传递
 3     //*A:理解一:都是值(基本/地址值)传递
 4     //    理解二:可能是值传递,也可能是引用传递(地址值)
 5     //*Q:JS引擎如何管理内存?
 6     //*A:分配一块小内存,得到他的使用权
 7     //    存储数据,可以反复进行操作
 8     //    释放小内存空间
 9     //小知识点:释放内存
10     //    局部变量:函数执行完自动释放
11     //    对象:成为垃圾对象==>垃圾回收器回收
12    var a=3//这里的a是一个变量(全局变量)
13     function fn (a) {//这里的a是另一个变量(局部变量),这里有一步:a=a(前面的是局部变量后面的是全局变量)
14       a=a+3//左边是写右边是读,这里的a是一个垃圾数据,没有被引用,所以输出的是3
15     }
16     fn(a)//这里操作的a是3
17     console.log(a)//输出的是3
18
19     function fn2 (obj) {
20       console.log(obj.name)
21     }
22     var obj={name:‘Tom‘}
23     fn2(obj)
24
25     var a=3//这里a=3占用一个内存空间
26     var obj={}//这里obj占用一个内存空间,{}占用一个内存空间
27     objj=null//这里释放了对象的空间,而obj空间没有被释放
28
29     function fn3 () {
30       var b={}//局部变量执行到这里的时候没又将b的值放到内存中,要执行到fn的才将b的值放到内存中,函数执行完就会释放
31     }
32     fn()//这里b被释放,b指向的对象被垃圾回收器回收
33   </script>

原文地址:https://www.cnblogs.com/junxiaobai/p/10333509.html

时间: 2024-10-29 11:07:52

JS之数据_变量_内存v(**V**)v(3)的相关文章

JS之数据_变量_内存v(**V**)v

1 <script > 2 //*Q:什么是数据? 3 //*A:存储在内存中代表特定信息的'东东',数据的特点:可传递,可运算,一切皆数据 4 //*Q:什么是内存? 5 //*A:内存条通电以后产生的可存储数据的空间(临时的) 6 //*Q:什么是变量? 7 //*A:可变化的量,由变量名和变量值组成 8 //* 每个变量对应一块小内存,变量用来查找对应的变量值存储的内存,变量值就是内存中保存的数据 9 //*Q:内存,数据和变量三者之间的关系? 10 //*A:内存用来存储数据的空间,

数据_变量_内存

<!-- 1. 什么是数据? * 存储于内存中代表特定信息的'东东', 本质就是0101二进制 * 具有可读和可传递的基本特性 * 万物(一切)皆数据, 函数也是数据 * 程序中所有操作的目标: 数据 * 算术运算 * 逻辑运算 * 赋值 * 调用函数传参 ... 2. 什么是内存? * 内存条通电后产生的存储空间(临时的) * 产生和死亡: 内存条(集成电路板)==>通电==>产生一定容量的存储空间==>存储各种数据==>断电==>内存全部消失 * 内存的空间是临时的

javascript数据类型(二)--- 数据、变量与内存

一.基本概念 1.1 什么是数据? 存储在内存中代表特定信息的'东东', 本质上是0101... 数据的特点: 可传递, 可运算 一切皆数据 内存中所有操作的目标: 数据 算术运算 逻辑运算 赋值 运行函数 1.2 什么是内存? 内存条通电后产生的可储存数据的空间(临时的) 内存产生和死亡: 内存条(电路版)==>通电==>产生内存空间==>存储数据==>处理数据==>断电==>内存空间和数据都消失 一块小内存的2个数据 内部存储的数据(对象类型变量保存的值是对象的地址

JS之数据_变量_内存v(**V**)v(2)

1 <script > 2 //*Q:var a=xxx, a内存中到底保存的是什么? 3 //*A:xxx是基本数据类型,保存的是这个数据 4 // xxx是对象,保存的是对象的地址值 5 // xxx是一个变量,保存的是xxx的内容(可能是基本数据类型,也可能是地址值) 6 7 var a=3//基本数据类型 8 a=function () {//对象 9 10 } 11 var a=3//变量 12 b=a//这里传的是基本数据类型 13 b={} 14 a=b//这里传的是地址值 15

20181106_线程之异常_取消_变量_安全Lock

一. 线程的异常处理: try { TaskFactory taskFactory = new TaskFactory(); List<Task> taskList = new List<Task>(); //线程里面的异常是被吞掉了,因为已经脱离try catch的范围了 如果真想让线程之外的Catch抓到异常, 那么只有使用 WaitAll 抓到多线程里面全部的异常 //实际开发: 线程里面的action不允许出现异常,自己使用try catch处理好 for (int i =

js 如何动态添加数组_百度知道

1.数组的创建var arrayObj = new Array(); //创建一个数组var arrayObj = new Array([size]); //创建一个数组并指定长度,注意不是上限,是长度var arrayObj = new Array([element0[, element1[, ...[, elementN]]]]); 创建一个数组并赋值 要说明的是,虽然第二种方法创建数组指定了长度,但实际上所有情况下数组都是变长的,也就是说即使指定了长度为5,仍然可以将元素存储在规定长度以外

python基础_变量进阶

变量进阶(理解) 目标 变量的引用 可变和不可变类型 局部变量和全局变量 01. 变量的引用 变量 和 数据 都是保存在 内存 中的 在 Python 中 函数 的 参数传递 以及 返回值 都是靠 引用 传递的 1.1 引用的概念 在 Python 中 变量 和 数据 是分开存储的 数据 保存在内存中的一个位置 变量 中保存着数据在内存中的地址 变量 中 记录数据的地址,就叫做 引用 使用 id() 函数可以查看变量中保存数据所在的 内存地址 注意:如果变量已经被定义,当给一个变量赋值的时候,本

Hadoop! | 大数据百科 | 数据观 | 中国大数据产业观察_大数据门户

你正在使用过时的浏览器,Amaze UI 暂不支持. 请 升级浏览器 以获得更好的体验! 深度好文丨读完此文,就知道Hadoop了! 来源:BiThink 时间:2016-04-12 15:14:39 作者:陈飚 “昔我十年前,与君始相识.” 一瞬间Hadoop也到了要初中择校的年龄了. 十年前还没有Hadoop,几年前国内IT圈里还不知道什么是Hadoop,而现在几乎所有大型企业的IT系统中有已经有了Hadoop的集群在运行了各式各样的任务. 2006年项目成立的一开始,“Hadoop”这个单

makefile(02)_变量

4.变量与赋值 4.1.变量 Makefile中支持程序设计语言中变量的概率,但没有变量类型,只代表文本数据:变量命名规则:变量可以包含字符.数字.下划线,单不能包含":","#", "="," ",变量名大小写敏感.变量的定义和使用: 4.2.赋值 Makefile中有4中变量赋值方式: 4.2.1.简单赋值(:=) 程序设计语言中的通用赋值方式,只针对当前语句有效,等价于C语言中的赋值.建议无特殊要求时使用简单赋值. x