在主干中返回$ .extend和this

时间:2016-12-06 06:15:25

标签: javascript jquery backbone.js

我正在从事组件架构项目,我看到了这段代码。

clone : function() {
    return $.extend(true, {}, this);
}

这甚至意味着什么?使用this$.extend传递给对象?

1 个答案:

答案 0 :(得分:2)

似乎clone是一个对象的方法,它只是创建原始对象的克隆。你可以说它是一种创建对象真实副本的方法,而不仅仅是对它的引用。所以this指的是方法所属的对象。



var obj = {
  one: 1,
  two: 2,
  three: 3,
  clone: function() {
    return $.extend(true, {}, this);
  }
};

var clone = obj.clone();

obj.one = "one";

console.log(obj);
console.log(clone);

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
&#13;
&#13;
&#13;