码迷,mamicode.com
首页 > 编程语言 > 详细

javascript高程笔记-------第四章 变量、作用域和内存问题

时间:2017-09-30 10:11:11      阅读:136      评论:0      收藏:0      [点我收藏+]

标签:alert   class   数据   style   类型   过程   string   第四章   对象   

   首先JavaScript中的变量分为基本类型和引用类型。

 基本类型就是保存在栈内存中的简单数据段,而引用类型指的是那些保存在堆内存中的对象。

1.参数传递

javascript中所有参数的传递都是值传递。

1.1 基本数据类型的传递(undefined ,Null,Boolean,number,String)

1--->var money = 10;

2--->var t=function (money){
money = 5;
alert(money); //5
}
3--->t(money);

4--->alert(money); //10

执行过程 ①全局环境中初始化money的值 为10  ; ②创建函数 t 的执行环境  ;③ 执行 t 函数  复制全局环境中money的变量的值    赋值给 t 函数中的money    函数体内的money被改变 为5   然后再执行④  全局中的money值依然为10

1.2 对象的传递 (传递是对象的引用地址)

1--->var person = new Object();
2--->var student = person; 
3--->student.name = "zhangsan";
4--->alert(person.name); // zhangsan

 执行过程 ①全局环境中初始化person ,person引用了栈区的一个空对象  ; ②将person引用的对象地址值复制一份   赋值给student   ;③ 将student引用的对象中添加name属性 赋值为 zhangsan   ④  由于student和person引用的是同一个对象  所以值为 zhangsan!

 示例图

技术分享

 

javascript高程笔记-------第四章 变量、作用域和内存问题

标签:alert   class   数据   style   类型   过程   string   第四章   对象   

原文地址:http://www.cnblogs.com/shenwenbo/p/7613278.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!