当前位置:   article > 正文

jsdom, proxy对象(补环境神器)以及抠代码总结的问题_jsdomo补环境

jsdomo补环境

jsdom

const jsdom = require('jsdom')
const {JSDOM} = jsdom
const fs = require('fs')
options = {
            url : 'http://match.yuanrenxue.com/match/2',
            referrer: 'http://match.yuansrenxue.com/match/2',
            contentType: 'text/html',
            userAgent : 'Messdfass/7800',
            includeNodeLocations: true,
            runScripts:'dangerously',
            beforeParse(location) {
                location.reload = function(){}
            },
            cookieJar:new jsdom.CookieJar(), //网站有setCookie的话,提前植入cookie
        }
        cookie = {}, url=''
options.cookieJar.setCookie(cookie, url, function () {

})
fs.readFile('./jjs.html',  'utf8', function (err, data){
    const dom = new JSDOM(data, options);
    console.log(dom.window.document.cookie)
    dom.window.close()
});
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24

proxy

//代理普通对象
var person = {
    name: 14,
    age: 444,
    hobbies: [
        '泡妞',
        '看妹子'
    ]
}
var proxy = new Proxy(window, {
    get(target, property){
        // console.log('调用了target:', target)
        console.log('调用了property: window的', property)
        // Reflect.get(target, property)
        return target[property]
    },
    set(target, property, value){
        console.log('设置对象window', value)
        target[property] = value
    }
})
proxy.age



//代理window
window = global
window.a = '4444';
window.b = {
    name: 'xiaosheng',
    height: '200cm',
    hobbies: [
        '钓鱼',
        '养鱼'
    ]
}

var proxy = new Proxy(window, {
    get(target, property){
        // console.log('调用了target:', target)
        console.log('调用了property: window的', property)
        // Reflect.get(target, property)
        return target[property]
    },
    set(target, property, value){
        console.log('设置对象window', value)
        target[property] = value
    }
})
proxy.a = 45
// console.log(b.length)
proxy.b.length

// ->设置对象window 45
// ->调用了property: window的 b
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55

抠代码总结 的问题

抠代码的时候,如果代码里有this,导出的话就不能直接导出了,要导出对象
在这里插入图片描述
在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/空白诗007/article/detail/784993
推荐阅读
相关标签
  

闽ICP备14008679号