对js中arguments的理解

时光怂恿深爱的人放手 提交于 2020-03-06 12:57:03
export default function (target) {
    for (let i = 1, j = arguments.length; i < j; i++) {
        let source = arguments[i] || {}
        for (let prop in source) {
            if (source.hasOwnProperty(prop)) {
                let value = source[prop]
                if (value !== undefined) {
                    target[prop] = value
                }
            }
        }
    }
    return target
}

arguments:

**它是JS的一个很重要的内置对象,JS不像JAVA是显示传递参数,JS传的是形参,可以传也可以不传,
若方法里没有写参数却传入了参数,该如何拿到参数呢,就要用arguments了,在一些插件里通常这样使用。
每一个函数都有一个arguments对象,它包括了函数所要调的参数,通常我们把它当作数组使用,
用它的length得到参数数量,但它却不是数组,使用instanceof查看下,若使用push添加数据将报错**

js中的hasOwnProperty

 js属性对象的hasOwnProperty方法
Object的hasOwnProperty()方法返回一个布尔值,判断对象是否包含特定的自身(非继承)属性。
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!