实现对象的拷贝
$.clone = function (object) {
var clone = {};
var cloneOf = function (item) {
switch ($.type(item)) {
case 'array': return $.clone(item);
case 'object': return $.clone(item);
default: return item;
}
};
for (var key in object) clone[key] = cloneOf(object[key]);
return clone;
};
$.type(item)
上面的这句代码只是做了一个数据类型的判断
具体的实现方法可以使用
Object.prototype.toString.call(x)
参数x就是我们想要判断判断数据类型的变量
上面的switch主要考虑的就是对象的属性值是复合的数据类型,比如是数组或者是对象,如果是这样的话,需要在执行一遍克隆的操作,,然后使用for循环,最后把赋值的对象返回即可
这个方式能实对象的深拷贝和浅拷贝