美文网首页
用一个函数实现克隆所有的数据类型

用一个函数实现克隆所有的数据类型

作者: 毛毛_000e | 来源:发表于2018-12-24 20:52 被阅读0次

function clone(obj) {

    var o;

    if (typeof obj == "object") {

        if (obj === null) {

            o = null;

        } else {

// instanceof检测对象A是不是对象B的实例,原理是查看对象B的prototype指向的对象是否在对象A的[[prototype]]链上,如果在,则返回true

  if (obj instanceof Array) {

                o = [];

                for (var i = 0, len = obj.length; i < len; i++) {

                    o.push(clone(obj[i]));

                }

            } else {

                o = {};

                for (var j in obj) {

                    o[j] = clone(obj[j]);

                }

            }

        }

    } else {

        o = obj;

    }

    return o;

}

相关文章

网友评论

      本文标题:用一个函数实现克隆所有的数据类型

      本文链接:https://www.haomeiwen.com/subject/kerukqtx.html