對js中arguments的理解

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()方法返回一個布爾值,判斷對象是否包含特定的自身(非繼承)屬性。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章