粗大的内捧猛烈进出小视频,日本成人精品视频一区,在线播放亚洲成人av,精品人妻少妇嫩草av专区,亚洲AV永久久久久久久浪潮,性导航app精品视频,九九热精品免费视频,一本一本大道香蕉久在线播放

        屬性描述符與Proxy的區別&Vue3.0為何改用Proxy

        2020-4-21    前端達人

        屬性描述符

        什么是屬性描述符?

        屬性描述符就是一個屬性除了屬性名與屬性值之外的其他相關信息

        通過Object.getOwnPropertyDescriptor(對象, 屬性名)可以得到一個對象的某個屬性的屬性描述符

        let obj = {
            a: 1
        }
        console.log(Object.getOwnPropertyDescriptor(obj, 'a'));
        // {
        //     value: 1,
        //     writable: true,
        //     enumerable: true,
        //     configurable: true
        // }
        

        通過Object.getOwnPropertyDescriptors(對象)可以得到某個對象的所有屬性描述符

        let obj = {
            a: 1,
            b: 2
        }
        console.log(Object.getOwnPropertyDescriptors(obj));
        // {
        //     a: {
        //         value: 1, 
        //         writable: true,
        //         enumerable: true,
        //         configurable: true
        //     }
        //     b: {
        //         value: 2, 
        //         writable: true, 
        //         enumerable: true, 
        //         configurable: true
        //     }
        // }
        


        接下來,說一說每一個屬性描述符的作用

        value-屬性值

        不多逼逼

        configurable-屬性描述符是否可被修改

        當我們設置configurable為false以后,再去修改屬性描述符的話,會報錯


        let obj = {
            a: 1,
            b: 2
        }
        Object.defineProperty(obj, 'a', {
            value: 'a',
            configurable: false
        })
        Object.defineProperty(obj, 'a', {
            value: 'a',
            configurable: true
        })
        // Uncaught TypeError: Cannot redefine property: a
        //    at Function.defineProperty (<anonymous>)
        



        enumerable-該屬性是否可被枚舉

        當設置一個屬性的enumerable為false時,該屬性不可被forin循環
        但是不影響forof循環,因為forof循環看有沒有Symbol(Symbol.iterator)
        forin循環的是屬性名,forof循環的是屬性值


        日歷

        鏈接

        個人資料

        藍藍設計的小編 http://www.xintaizi.com

        存檔