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

javascript 对象初探 (三)--- 传递/比较对象

时间:2016-08-28 12:24:50      阅读:184      评论:0      收藏:0      [点我收藏+]

标签:

传递对象


当我们拷贝某个对象或者将对象传递给某个函数时,往往传递的都是该对象的引用。因此我们在该对象的引用上做任何改动,实际上都会影响到引用的原对象。

var she = {num:1};
var her = she;
her.num; // 1
her.num = 100;
she.num; // 100

同样的将对象传递给函数也是一样的:

var she = {num:1};
var her = function(o){o.num=100};
her(she);
she.num = 100;

 

比较对象


当我们进行对象的比较时,当且仅当两个引用指向同一个对象时,结果为true。而如果是不同的对象,但恰好有相同的属性,与方法,比较也会返回false。

 

var a = {num:1};
var b = {num:1};
a == b // false
a === b // false

我们可以新建一个对象,并将其中一个对象赋值给她,这样一来这个变量就指向了这个对象

var c = a;
c == a; // true

 

在这种情况下,c与a所指向的对象是相同的(也就是说该其中一个另一个也跟着变化);

但b与c还是不同的对象:

b == c; // false

 

javascript 对象初探 (三)--- 传递/比较对象

标签:

原文地址:http://www.cnblogs.com/beyond-succeed/p/5814553.html

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