proxy代理

作者: 为了_理想 | 来源:发表于2020-03-22 18:42 被阅读0次

proxy代理对象

###proxy代理对象
var hd = {
            name: '为了理想',
            age: 23,
        }

        const Proxyty = new Proxy(hd, {
            //obj 第一个值是当前代理的对象, 
            //第二个值是获取当前代理在外面调用的属性
            get(obj, params) {
                return obj[params]   //注意: set 方法修改之后,会变成一个字符串,所以需要使用这种方法赋值
            },

            //第一个值是当前代理的对象, 
            //第二个值是获取当前修改的属性
            //第三个是在外面的赋值
            set(obj, params, value) {
                console.log(obj, 'obj') // hd
                console.log(params, 'params') // age
                console.log(value, 'value') // 999
                obj[params] = value
                return true
            }
        })
       Proxyty .age = 999
       Proxyty.set //在直接调用对象里面的属性的时候会进入到get方法里面

proxy数组使用代理拦截

    var lesseng = [{
            type: 'css',
            content: '这是CSS'
        }, {
            type: 'HTML',
            content: '这是HTML'
        }, {
            type: 'javascript',
            content: '这是JAVASCRIPT'
        }, ]


        let getProxy = new Proxy(lesseng, {
            get(array, key) {
                var content = array[key].content
                var length = 6;
                array[key].content = content.length > length ? content.substr(0, length) + '.'.repeat(3) : content
                return array[key]
            },

        })
        console.log(getProxy[2])

相关文章

网友评论

    本文标题:proxy代理

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