arguments、克隆





1.arguments.callee


这个返回的其实就是ff函数的引用:


这个引用和ff是一样的,就是代表了一个一模一样的函数

下面是一个应用:


扫描二维码关注公众号,回复: 1675638 查看本文章

这是一个在一个立即执行函数里面计算阶乘的方法



下面是一个深赋值的例子


var obj={
            name:"abc",
            age:123,
            card:['visa','master'],
            wife:{
                name:"bcd",
                son:{
                    name:"aaa"
                }
            }
        }
        var obj1={
    
        }
        function deepClone(origin,target){
            var target=target || {},
            toStr=Object.prototype.toString,
            arrStr="[Object Array]";
            for(var prop in origin)
            {
                if(origin.hasOwnProperty(prop))
                {
                    if(origin[prop]!=='null'&&typeof(origin[prop])=='object')//就说明是引用类型
                    {
                        if(toStr.call(origin[prop])==arrStr){
                            target[prop]=[];
                        }
                        else{
                            target[prop]={};
                        }
                        deepClone(origin[prop],target[prop]);
                    }
                    else{
                        target[prop]=origin[prop];
                    }
                }
            }
            return target;
        }

猜你喜欢

转载自blog.csdn.net/scwmason/article/details/80709513