javascript 变量与对象的复制
来源:互联网 发布:卡盟网站官网程序源码 编辑:程序博客网 时间:2024/04/28 01:08
javascript变量与对象复制存在本质的区别,变量复制是将一个变量空间的值拷贝一份保存在另一个独立的空间中。他们互不影响。
var test1 = 5;
var test2 = test1;
test1 = 6;
alert(test1); //6
alert(5); //5
对象的复制虽然也是相互独立的空间,但是他们指向了同一个堆内存中,一个对象的改变就改改变了堆内存,则副本对象值也相应的改变了。
var test1 = new Object();
var test2 = test1;
test1.name = 5;
alert(test2.name); //5
test2.name = 8;
test1.name = 15;
alert(test2.name); //15 因为最终object堆内存中的name属性的值改成了15
外部变量以参数的形式传递给内部函数,我们称这个参数为局部变量,大家都知道外部内部函数的变化不会影响外部函数的值,但是对象例外,原理同样是因为我们在内部函数中修改了对象的值的时候是改变了堆内存中对象的值
var test1 = 20;
function Test(count){
count += 10;
return count;
}
var rel = Test(test1);
alert(test1); //20 值没有发生变化
alert(rel); //30
对象的例子
var test1 = new Object();
function Test(obj) {
obj.num = 30;
}
alert(test1.name); //30
0 0
- javascript 变量与对象的复制
- javascript变量与对象
- JavaScript~对象的复制
- 玩玩 javascript 对象clone 与复制。
- JavaScript变量对象的深入
- 对象的浅复制与深复制
- JavaScript 执行环境 与 变量对象
- 对象的赋值与对象的复制
- 深究JavaScript——参数传递与变量复制
- javascript 完成对象的完美复制
- JavaScript数组和对象的复制
- 变量与数组的浅复制
- javascript复制对象
- javascript复制对象使用说明
- JavaScript对象深复制
- 深度复制JavaScript对象
- Javascript深度复制对象
- JavaScript 复制对象
- linux下IPTABLES配置详解
- 写读取在txt中的成绩,然后排序的
- 《linux多线程服务端编程--muduo网络库的使用》读后感
- hdu1080 Human Gene Functions(LCS的变型)
- Cocos2D-x游戏开发之十七:角色类的总结
- javascript 变量与对象的复制
- <<The C Programming Language>>学习之路-练习题参考答案 1-12
- hdu 1064
- Eclipse快捷键大全
- 关于c++文件的结尾标志
- 第四周作业——图的表示
- URAL 1821 Biathlon(模拟)
- Java(字符串相关)
- Struts2框架学习(三) 数据处理