当前位置: 首页 > article >正文

阿里140 补环境日志

所有属性值是   __cheng________   都是我做的防止套代理  非140环境检测代码

这个日志绝大多数  是做和浏览器tostring结果         处理一致  

方法: toString 函数: ......        结果: .....

当前代码补了事件和dom   实际手补 比这少些

下方为环境日志:

VM526 vm.js:848 方法: get   对象: window   属性: UA_Opt   属性值: undefined   属性值类型: undefined
VM526 vm.js:857 方法: set   对象: window   属性: UA_Opt   属性值: {}   属性值类型: object
VM526 vm.js:832 方法: get   对象: window   属性: UA_Opt   属性值: {}   属性值类型: object
VM526 vm.js:848 方法: get   对象: UA_Opt   属性: loadTime   属性值: undefined   属性值类型: undefined
VM526 vm.js:848 方法: get   对象: window   属性: __acjs_awsc_140   属性值: undefined   属性值类型: undefined
VM526 vm.js:848 方法: get   对象: window   属性: __acjs   属性值: undefined   属性值类型: undefined
VM526 vm.js:857 方法: set   对象: window   属性: __acjs   属性值: 1   属性值类型: number
VM526 vm.js:848 方法: get   对象: window   属性: _uab_module   属性值: undefined   属性值类型: undefined
VM526 vm.js:857 方法: set   对象: window   属性: _uab_module   属性值: 1   属性值类型: number
VM526 vm.js:842 方法: get   对象: window   属性: Date   属性值: ƒ Date() { [native code] }   属性值类型: function
 方法: construct   函数: Date   传参: []   结果: Fri Jun 06 2025 17:14:36 GMT+0800 (GMT+08:00)
 方法: get   对象: navigator   属性: __cheng________   属性值: true   属性值类型: boolean
 方法: get   对象: window   属性: navigator   属性值: Proxy(Navigator) {__cheng________: true}   属性值类型: object
 方法: get   对象: navigator   属性: getBattery   属性值:    属性值类型: function
 方法: toString 函数: getBattery   结果: function getBattery() { [native code] }
 方法: get   对象: navigator   属性: __cheng________   属性值: true   属性值类型: boolean
 方法: get   对象: window   属性: navigator   属性值: Proxy(Navigator) {__cheng________: true}   属性值类型: object
 方法: get   对象: navigator   属性: getBattery   属性值:    属性值类型: function
 方法: toString 函数: getBattery   结果: function getBattery() { [native code] }
 setTimeout  0
 方法: get   对象: window   属性: chrome   属性值: {runtime: {…}, csi: ƒ, loadTimes: ƒ}   属性值类型: object
 方法: get   对象: chrome   属性: history   属性值: undefined   属性值类型: undefined
 方法: get   对象: chrome   属性: bookmarks   属性值: undefined   属性值类型: undefined
 方法: get   对象: chrome   属性: cookies   属性值: undefined   属性值类型: undefined
 方法: get   对象: chrome   属性: system   属性值: undefined   属性值类型: undefined
 方法: get   对象: window   属性: Element   属性值:    属性值类型: function
 方法: toString 函数: Element   结果: function Element() { [native code] }
 方法: get   对象: window   属性: mozPaintCount   属性值: undefined   属性值类型: undefined
 方法: get   对象: window   属性: mozInnerScreenX   属性值: undefined   属性值类型: undefined
 方法: get   对象: window   属性: Debug   属性值: undefined   属性值类型: undefined
 方法: get   对象: window   属性: WebKitPlaybackTargetAvailabilityEvent   属性值: undefined   属性值类型: undefined
 方法: get   对象: window   属性: Element   属性值:    属性值类型: function
 方法: toString 函数: Element   结果: function Element() { [native code] }
 方法: get   对象: window   属性: Element   属性值:    属性值类型: function
 方法: toString 函数: Element   结果: function Element() { [native code] }
 方法: get   对象: navigator   属性: __cheng________   属性值: true   属性值类型: boolean
 方法: get   对象: window   属性: navigator   属性值: Proxy(Navigator) {__cheng________: true}   属性值类型: object
 方法: get   对象: document   属性: __cheng________   属性值: true   属性值类型: boolean
 方法: get   对象: window   属性: document   属性值: Proxy(HTMLDocument) {__cheng________: true}   属性值类型: object
 in检测:'ontouchstart' in document=>>false
 方法: get   对象: window   属性: webkitRTCPeerConnection   属性值:    属性值类型: function
 方法: toString 函数: RTCPeerConnection   结果: function RTCPeerConnection() { [native code] }
 方法: get   对象: navigator   属性: platform   属性值: Win32   属性值类型: string
 调用正则的test方法,正则: /arm|iphone|ipad|ipod/i 源字符串: Win32 结果是 false
 方法: get   对象: window   属性: Date   属性值:    属性值类型: function
 方法: get   对象: window   属性: Promise   属性值:    属性值类型: function
 方法: get   对象: window   属性: Promise   属性值:    属性值类型: function
 方法: get   对象: window   属性: Date   属性值:    属性值类型: function
 方法: get   对象: window   属性: Date   属性值:    属性值类型: function
 方法: get   对象: window   属性: origin   属性值: https://xindafengche.souche.com   属性值类型: string
 方法: get   对象: window   属性: __cheng________   属性值: true   属性值类型: boolean
 方法: get   对象: window   属性: top   属性值: Proxy(Window) {Function: Proxy(Function), Proxy: ƒ, eval: ƒ, e: ƒ, o: ƒ, …}   属性值类型: object
 方法: get   对象: window   属性: PointerEvent   属性值:    属性值类型: function
 方法: toString 函数: PointerEvent   结果: function PointerEvent() { [native code] }
 方法: get   对象: window   属性: PointerEvent   属性值:    属性值类型: function
 方法: toString 函数: PointerEvent   结果: function PointerEvent() { [native code] }
 方法: get   对象: window   属性: PointerEvent   属性值:    属性值类型: function
 方法: toString 函数: PointerEvent   结果: function PointerEvent() { [native code] }
 方法: get   对象: window   属性: Function   属性值: Proxy(Function) {length: 1, name: 'Function', prototype: ƒ}   属性值类型: function
 方法: construct   函数: Function   传参: ['var a=arguments;return this[a[1]]!==a[0]']   结果: 
 方法: get   对象: window   属性: performance   属性值: Performance {}   属性值类型: object
 方法: get   对象: window   属性: performance   属性值: Performance {__cheng________: true}   属性值类型: object
 方法: get   对象: document   属性: __cheng________   属性值: true   属性值类型: boolean
 方法: get   对象: window   属性: document   属性值: Proxy(HTMLDocument) {__cheng________: true}   属性值类型: object
 方法: get   对象: window   属性: UA_Opt   属性值: {__cheng________: true}   属性值类型: object
 方法: get   对象: window   属性: UA_Opt   属性值: {__cheng________: true}   属性值类型: object
 方法: get   对象: document   属性: currentScript   属性值: null   属性值类型: object
 方法: get   对象: document   属性: __cheng________   属性值: true   属性值类型: boolean
 方法: get   对象: window   属性: document   属性值: Proxy(HTMLDocument) {__cheng________: true}   属性值类型: object
 方法: get   对象: document   属性: hidden   属性值: false   属性值类型: boolean
 方法: get   对象: document   属性: __cheng________   属性值: true   属性值类型: boolean
 方法: get   对象: window   属性: document   属性值: Proxy(HTMLDocument) {__cheng________: true}   属性值类型: object
 方法: get   对象: document   属性: createElement   属性值:    属性值类型: function
 方法: toString 函数: createElement   结果: function createElement() { [native code] }
 createElement canvas
 拦截 Map.set -> 设置键: HTMLCanvasElement {} 值: Element {parent: Document, prev: null, next: null, startIndex: null, endIndex: null, …}
 拦截 Map.set -> 设置键: HTMLCanvasElement {} 值: Canvas {type: 'image', stride: 0, width: 0, height: 0}
 canvas .setAttribute( width 300 )
 canvas .setAttribute( height 150 )
 方法: apply 函数: createElement   传参: ['canvas']   结果: HTMLCanvasElement {}
 方法: get   对象: createElement的返回值   属性: getContext   属性值:    属性值类型: function
 方法: toString 函数: getContext   结果: function getContext() { [native code] }
 方法: get   对象: createElement的返回值   属性: getContext   属性值:    属性值类型: function
 方法: toString 函数: getContext   结果: function getContext() { [native code] }
 方法: get   对象: createElement的返回值   属性: getContext   属性值:    属性值类型: function
 方法: toString 函数: getContext   结果: function getContext() { [native code] }
 方法: get   对象: window   属性: mozInnerScreenX   属性值: undefined   属性值类型: undefined
 方法: get   对象: window   属性: WebKitPlaybackTargetAvailabilityEvent   属性值: undefined   属性值类型: undefined
 方法: get   对象: window   属性: mozPaintCount   属性值: undefined   属性值类型: undefined
 方法: get   对象: document   属性: __cheng________   属性值: true   属性值类型: boolean
 方法: get   对象: window   属性: document   属性值: Proxy(HTMLDocument) {__cheng________: true}   属性值类型: object
 方法: get   对象: window   属性: Debug   属性值: undefined   属性值类型: undefined
 方法: get   对象: location   属性: __cheng________   属性值: true   属性值类型: boolean
 方法: get   对象: window   属性: location   属性值: Proxy(Location) {…}   属性值类型: object
 方法: get   对象: navigator   属性: __cheng________   属性值: true   属性值类型: boolean
 方法: get   对象: window   属性: navigator   属性值: Proxy(Navigator) {__cheng________: true}   属性值类型: object
 方法: get   对象: window   属性: WindVane   属性值: undefined   属性值类型: undefined
 方法: get   对象: window   属性: WeixinJSBridge   属性值: undefined   属性值类型: undefined
 方法: get   对象: window   属性: __wxjs_environment   属性值: undefined   属性值类型: undefined
 方法: get   对象: window   属性: Element   属性值:    属性值类型: function
 方法: toString 函数: Element   结果: function Element() { [native code] }
 方法: get   对象: location   属性: href   属性值: https://xindafengche.souche.com/#/login?action=accountLogin   属性值类型: string
 方法: get   对象: window   属性: AlipayJSBridge   属性值: undefined   属性值类型: undefined
 方法: get   对象: window   属性: __wxjs_environment   属性值: undefined   属性值类型: undefined
 方法: get   对象: window   属性: Element   属性值:    属性值类型: function
 方法: toString 函数: Element   结果: function Element() { [native code] }
 方法: get   对象: navigator   属性: buildID   属性值: undefined   属性值类型: undefined
 方法: get   对象: window   属性: Element   属性值:    属性值类型: function
 方法: toString 函数: Element   结果: function Element() { [native code] }
 方法: get   对象: window   属性: webkitRTCPeerConnection   属性值:    属性值类型: function
 方法: toString 函数: RTCPeerConnection   结果: function RTCPeerConnection() { [native code] }
 方法: get   对象: window   属性: ScriptEngineBuildVersion   属性值: undefined   属性值类型: undefined
 方法: get   对象: window   属性: ScriptEngineMajorVersion   属性值: undefined   属性值类型: undefined
 方法: get   对象: window   属性: ScriptEngineMinorVersion   属性值: undefined   属性值类型: undefined
 方法: get   对象: window   属性: hasOwnProperty   属性值:    属性值类型: function
 方法: get   对象: window   属性: Symbol   属性值:    属性值类型: function
 方法: get   对象: window   属性: Symbol   属性值:    属性值类型: function
 方法: get   对象: window   属性: Symbol   属性值:    属性值类型: function
 方法: get   对象: window   属性: hasOwnProperty   属性值:    属性值类型: function
 方法: get   对象: window   属性: Symbol   属性值:    属性值类型: function
 方法: get   对象: window   属性: Symbol   属性值:    属性值类型: function
 方法: get   对象: window   属性: WeakMap   属性值:    属性值类型: function
 方法: get   对象: window   属性: WeakMap   属性值:    属性值类型: function
 方法: get   对象: window   属性: Symbol   属性值:    属性值类型: function
 方法: get   对象: window   属性: Symbol   属性值:    属性值类型: function
 方法: get   对象: window   属性: Symbol   属性值:    属性值类型: function
 方法: get   对象: window   属性: DOMTokenList   属性值:    属性值类型: function
 方法: toString 函数: DOMTokenList   结果: function DOMTokenList() { [native code] }
 方法: get   对象: window   属性: DOMTokenList   属性值:    属性值类型: function
 方法: toString 函数: DOMTokenList   结果: function DOMTokenList() { [native code] }
 方法: get   对象: window   属性: Symbol   属性值:    属性值类型: function
 方法: get   对象: window   属性: hasOwnProperty   属性值:    属性值类型: function
 方法: get   对象: window   属性: __cheng________   属性值: true   属性值类型: boolean
 方法: get   对象: window   属性: self   属性值: Proxy(Window) {Function: Proxy(Function), Proxy: ƒ, eval: ƒ, e: ƒ, o: ƒ, …}   属性值类型: object
 方法: get   对象: window   属性: hasOwnProperty   属性值:    属性值类型: function
 方法: get   对象: window   属性: PerformanceTiming   属性值: undefined   属性值类型: undefined
 方法: get   对象: window   属性: hasOwnProperty   属性值:    属性值类型: function
 方法: get   对象: window   属性: HTMLDocument   属性值:    属性值类型: function
 方法: toString 函数: HTMLDocument   结果: function HTMLDocument() { [native code] }
 方法: get   对象: window   属性: HTMLMediaElement   属性值:    属性值类型: function
 方法: toString 函数: HTMLMediaElement   结果: function HTMLMediaElement() { [native code] }
 方法: get   对象: window   属性: HTMLDocument   属性值:    属性值类型: function
 方法: toString 函数: HTMLDocument   结果: function HTMLDocument() { [native code] }
 方法: get   对象: window   属性: HTMLMediaElement   属性值:    属性值类型: function
 方法: toString 函数: HTMLMediaElement   结果: function HTMLMediaElement() { [native code] }
 方法: get   对象: window   属性: hasOwnProperty   属性值:    属性值类型: function
 方法: get   对象: window   属性: hasOwnProperty   属性值:    属性值类型: function
 方法: get   对象: window   属性: Symbol   属性值:    属性值类型: function
 方法: get   对象: window   属性: PointerEvent   属性值:    属性值类型: function
 方法: toString 函数: PointerEvent   结果: function PointerEvent() { [native code] }
 方法: get   对象: window   属性: Symbol   属性值:    属性值类型: function
 方法: get   对象: window   属性: Object   属性值:    属性值类型: function
 方法: get   对象: window   属性: OfflineAudioContext   属性值:    属性值类型: function
 方法: toString 函数: OfflineAudioContext   结果: function OfflineAudioContext() { [native code] }
 方法: get   对象: window   属性: OfflineAudioContext   属性值:    属性值类型: function
 方法: toString 函数: OfflineAudioContext   结果: function OfflineAudioContext() { [native code] }
 方法: get   对象: window   属性: Symbol   属性值:    属性值类型: function
 方法: get   对象: document   属性: createElement   属性值:    属性值类型: function
 方法: toString 函数: createElement   结果: function createElement() { [native code] }
 createElement canvas
 拦截 Map.set -> 设置键: HTMLCanvasElement {} 值: Element {parent: Document, prev: null, next: null, startIndex: null, endIndex: null, …}
 拦截 Map.set -> 设置键: HTMLCanvasElement {} 值: Canvas {type: 'image', stride: 0, width: 0, height: 0}
 canvas .setAttribute( width 300 )
 canvas .setAttribute( height 150 )
 方法: get   对象: document   属性: wasDiscarded   属性值: false   属性值类型: boolean
 方法: get   对象: window   属性: Object   属性值:    属性值类型: function
 方法: get   对象: window   属性: PointerEvent   属性值:    属性值类型: function
 方法: toString 函数: PointerEvent   结果: function PointerEvent() { [native code] }
 方法: get   对象: window   属性: hasOwnProperty   属性值:    属性值类型: function
 方法: get   对象: window   属性: Intl   属性值: Intl {getCanonicalLocales: ƒ, supportedValuesOf: ƒ, DateTimeFormat: ƒ, NumberFormat: ƒ, Collator: ƒ, …}   属性值类型: object
 方法: get   对象: window   属性: Intl   属性值: Intl {__cheng________: true, getCanonicalLocales: ƒ, supportedValuesOf: ƒ, DateTimeFormat: ƒ, NumberFormat: ƒ, …}   属性值类型: object
 方法: get   对象: window   属性: performance   属性值: Performance {__cheng________: true}   属性值类型: object
 方法: get   对象: window   属性: performance   属性值: Performance {__cheng________: true}   属性值类型: object
 方法: get   对象: window   属性: Intl   属性值: Intl {__cheng________: true, getCanonicalLocales: ƒ, supportedValuesOf: ƒ, DateTimeFormat: ƒ, NumberFormat: ƒ, …}   属性值类型: object
 方法: get   对象: window   属性: hasOwnProperty   属性值:    属性值类型: function
 方法: get   对象: window   属性: hasOwnProperty   属性值:    属性值类型: function
 方法: get   对象: window   属性: hasOwnProperty   属性值:    属性值类型: function
 方法: get   对象: window   属性: hasOwnProperty   属性值:    属性值类型: function
 方法: get   对象: window   属性: hasOwnProperty   属性值:    属性值类型: function
 方法: get   对象: window   属性: Object   属性值:    属性值类型: function
 方法: get   对象: window   属性: Intl   属性值: Intl {__cheng________: true, getCanonicalLocales: ƒ, supportedValuesOf: ƒ, DateTimeFormat: ƒ, NumberFormat: ƒ, …}   属性值类型: object
 方法: get   对象: window   属性: Promise   属性值:    属性值类型: function
 方法: get   对象: window   属性: MediaStreamTrack   属性值:    属性值类型: function
 方法: toString 函数: MediaStreamTrack   结果: function MediaStreamTrack() { [native code] }
 方法: get   对象: window   属性: Promise   属性值:    属性值类型: function
 方法: get   对象: window   属性: Intl   属性值: Intl {__cheng________: true, getCanonicalLocales: ƒ, supportedValuesOf: ƒ, DateTimeFormat: ƒ, NumberFormat: ƒ, …}   属性值类型: object
 方法: get   对象: window   属性: MediaStreamTrack   属性值:    属性值类型: function
 方法: toString 函数: MediaStreamTrack   结果: function MediaStreamTrack() { [native code] }
 方法: get   对象: window   属性: Intl   属性值: Intl {__cheng________: true, getCanonicalLocales: ƒ, supportedValuesOf: ƒ, DateTimeFormat: ƒ, NumberFormat: ƒ, …}   属性值类型: object
 方法: get   对象: window   属性: Intl   属性值: Intl {__cheng________: true, getCanonicalLocales: ƒ, supportedValuesOf: ƒ, DateTimeFormat: ƒ, NumberFormat: ƒ, …}   属性值类型: object
 方法: get   对象: window   属性: Intl   属性值: Intl {__cheng________: true, getCanonicalLocales: ƒ, supportedValuesOf: ƒ, DateTimeFormat: ƒ, NumberFormat: ƒ, …}   属性值类型: object
 方法: get   对象: window   属性: Intl   属性值: Intl {__cheng________: true, getCanonicalLocales: ƒ, supportedValuesOf: ƒ, DateTimeFormat: ƒ, NumberFormat: ƒ, …}   属性值类型: object
 方法: get   对象: window   属性: Promise   属性值:    属性值类型: function
 方法: get   对象: window   属性: hasOwnProperty   属性值:    属性值类型: function
 方法: get   对象: document   属性: __cheng________   属性值: true   属性值类型: boolean
 方法: get   对象: window   属性: document   属性值: Proxy(HTMLDocument) {__cheng________: true}   属性值类型: object
 方法: get   对象: navigator   属性: __cheng________   属性值: true   属性值类型: boolean
 方法: get   对象: window   属性: navigator   属性值: Proxy(Navigator) {__cheng________: true}   属性值类型: object
 in检测:'ontouchstart' in document=>>false
 方法: get   对象: window   属性: Object   属性值:    属性值类型: function
 方法: get   对象: window   属性: Debug   属性值: undefined   属性值类型: undefined
 方法: get   对象: window   属性: Object   属性值:    属性值类型: function
 方法: get   对象: window   属性: addEventListener   属性值:    属性值类型: function
 方法: toString 函数: addEventListener   结果: function addEventListener() { [native code] }
 给 Proxy(Window) {Function: Proxy(Function), Proxy: ƒ, eval: ƒ, e: ƒ, o: ƒ, …} 增加了事件监听, 事件是 test
 拦截 Map.set -> 设置键: Proxy(Window) {Function: Proxy(Function), Proxy: ƒ, eval: ƒ, e: ƒ, o: ƒ, …} 值: {test: Array(1)}
 方法: apply 函数: addEventListener   传参: (3) ['test', {…}, {…}]   结果: undefined
 方法: get   对象: window   属性: removeEventListener   属性值:    属性值类型: function
 方法: toString 函数: removeEventListener   结果: function removeEventListener() { [native code] }
 方法: apply 函数: removeEventListener   传参: (3) ['test', {…}, {…}]   结果: undefined
 方法: get   对象: window   属性: attachEvent   属性值: undefined   属性值类型: undefined
 方法: get   对象: window   属性: addEventListener   属性值:    属性值类型: function
 方法: toString 函数: addEventListener   结果: function addEventListener() { [native code] }
 方法: get   对象: window   属性: DeviceMotionEvent   属性值:    属性值类型: function
 方法: toString 函数: DeviceMotionEvent   结果: function DeviceMotionEvent() { [native code] }
 方法: get   对象: window   属性: addEventListener   属性值:    属性值类型: function
 方法: toString 函数: addEventListener   结果: function addEventListener() { [native code] }
 给 Proxy(Window) {Function: Proxy(Function), Proxy: ƒ, eval: ƒ, e: ƒ, o: ƒ, …} 增加了事件监听, 事件是 deviceorientation
 方法: get   对象: document   属性: attachEvent   属性值: undefined   属性值类型: undefined
 方法: get   对象: document   属性: addEventListener   属性值:    属性值类型: function
 方法: toString 函数: addEventListener   结果: function addEventListener() { [native code] }
VM526 vm.js:848 方法: get   对象: document   属性: addEventListener   属性值: ƒ addEventListener(type, func) {
        if (this instanceof EventTarget) {
            my_env.cheng_lin("给",this,"增加了事件监听, 事件是", type);
            // btn.addEventListener("click", func)
         …   属性值类型: function
VM526 vm.js:1014 方法: toString 函数: addEventListener   结果: function addEventListener() { [native code] }
VM526 vm.js:1301 给 Proxy(HTMLDocument) {__cheng________: true} 增加了事件监听, 事件是 mousedown
VM526 vm.js:28 拦截 Map.set -> 设置键: Proxy(HTMLDocument) {__cheng________: true} 值: {mousedown: Array(1)}
VM526 vm.js:848 方法: get   对象: document   属性: attachEvent   属性值: undefined   属性值类型: undefined
VM526 vm.js:848 方法: get   对象: document   属性: addEventListener   属性值: ƒ addEventListener(type, func) {
        if (this instanceof EventTarget) {
            my_env.cheng_lin("给",this,"增加了事件监听, 事件是", type);
            // btn.addEventListener("click", func)
         …   属性值类型: function
VM526 vm.js:1014 方法: toString 函数: addEventListener   结果: function addEventListener() { [native code] }
VM526 vm.js:848 方法: get   对象: document   属性: addEventListener   属性值: ƒ addEventListener(type, func) {
        if (this instanceof EventTarget) {
            my_env.cheng_lin("给",this,"增加了事件监听, 事件是", type);
            // btn.addEventListener("click", func)
         …   属性值类型: function
VM526 vm.js:1014 方法: toString 函数: addEventListener   结果: function addEventListener() { [native code] }
VM526 vm.js:1301 给 Proxy(HTMLDocument) {__cheng________: true} 增加了事件监听, 事件是 mouseup
VM526 vm.js:848 方法: get   对象: document   属性: attachEvent   属性值: undefined   属性值类型: undefined
VM526 vm.js:848 方法: get   对象: document   属性: addEventListener   属性值: ƒ addEventListener(type, func) {
        if (this instanceof EventTarget) {
            my_env.cheng_lin("给",this,"增加了事件监听, 事件是", type);
            // btn.addEventListener("click", func)
         …   属性值类型: function
VM526 vm.js:1014 方法: toString 函数: addEventListener   结果: function addEventListener() { [native code] }
VM526 vm.js:848 方法: get   对象: document   属性: addEventListener   属性值: ƒ addEventListener(type, func) {
        if (this instanceof EventTarget) {
            my_env.cheng_lin("给",this,"增加了事件监听, 事件是", type);
            // btn.addEventListener("click", func)
         …   属性值类型: function
VM526 vm.js:1014 方法: toString 函数: addEventListener   结果: function addEventListener() { [native code] }
VM526 vm.js:1301 给 Proxy(HTMLDocument) {__cheng________: true} 增加了事件监听, 事件是 mousemove
VM526 vm.js:848 方法: get   对象: document   属性: attachEvent   属性值: undefined   属性值类型: undefined
VM526 vm.js:848 方法: get   对象: document   属性: addEventListener   属性值: ƒ addEventListener(type, func) {
        if (this instanceof EventTarget) {
            my_env.cheng_lin("给",this,"增加了事件监听, 事件是", type);
            // btn.addEventListener("click", func)
         …   属性值类型: function
VM526 vm.js:1014 方法: toString 函数: addEventListener   结果: function addEventListener() { [native code] }
VM526 vm.js:848 方法: get   对象: document   属性: addEventListener   属性值: ƒ addEventListener(type, func) {
        if (this instanceof EventTarget) {
            my_env.cheng_lin("给",this,"增加了事件监听, 事件是", type);
            // btn.addEventListener("click", func)
         …   属性值类型: function
VM526 vm.js:1014 方法: toString 函数: addEventListener   结果: function addEventListener() { [native code] }
VM526 vm.js:1301 给 Proxy(HTMLDocument) {__cheng________: true} 增加了事件监听, 事件是 click
VM526 vm.js:848 方法: get   对象: document   属性: attachEvent   属性值: undefined   属性值类型: undefined
VM526 vm.js:848 方法: get   对象: document   属性: addEventListener   属性值: ƒ addEventListener(type, func) {
        if (this instanceof EventTarget) {
            my_env.cheng_lin("给",this,"增加了事件监听, 事件是", type);
            // btn.addEventListener("click", func)
         …   属性值类型: function
VM526 vm.js:1014 方法: toString 函数: addEventListener   结果: function addEventListener() { [native code] }
VM526 vm.js:848 方法: get   对象: document   属性: addEventListener   属性值: ƒ addEventListener(type, func) {
        if (this instanceof EventTarget) {
            my_env.cheng_lin("给",this,"增加了事件监听, 事件是", type);
            // btn.addEventListener("click", func)
         …   属性值类型: function
VM526 vm.js:1014 方法: toString 函数: addEventListener   结果: function addEventListener() { [native code] }
VM526 vm.js:1301 给 Proxy(HTMLDocument) {__cheng________: true} 增加了事件监听, 事件是 keyup
VM526 vm.js:848 方法: get   对象: document   属性: attachEvent   属性值: undefined   属性值类型: undefined
VM526 vm.js:848 方法: get   对象: document   属性: addEventListener   属性值: ƒ addEventListener(type, func) {
        if (this instanceof EventTarget) {
            my_env.cheng_lin("给",this,"增加了事件监听, 事件是", type);
            // btn.addEventListener("click", func)
         …   属性值类型: function
VM526 vm.js:1014 方法: toString 函数: addEventListener   结果: function addEventListener() { [native code] }
VM526 vm.js:848 方法: get   对象: document   属性: addEventListener   属性值: ƒ addEventListener(type, func) {
        if (this instanceof EventTarget) {
            my_env.cheng_lin("给",this,"增加了事件监听, 事件是", type);
            // btn.addEventListener("click", func)
         …   属性值类型: function
VM526 vm.js:1014 方法: toString 函数: addEventListener   结果: function addEventListener() { [native code] }
VM526 vm.js:1301 给 Proxy(HTMLDocument) {__cheng________: true} 增加了事件监听, 事件是 focus
VM526 vm.js:848 方法: get   对象: document   属性: attachEvent   属性值: undefined   属性值类型: undefined
VM526 vm.js:848 方法: get   对象: document   属性: addEventListener   属性值: ƒ addEventListener(type, func) {
        if (this instanceof EventTarget) {
            my_env.cheng_lin("给",this,"增加了事件监听, 事件是", type);
            // btn.addEventListener("click", func)
         …   属性值类型: function
VM526 vm.js:1014 方法: toString 函数: addEventListener   结果: function addEventListener() { [native code] }
VM526 vm.js:848 方法: get   对象: document   属性: addEventListener   属性值: ƒ addEventListener(type, func) {
        if (this instanceof EventTarget) {
            my_env.cheng_lin("给",this,"增加了事件监听, 事件是", type);
            // btn.addEventListener("click", func)
         …   属性值类型: function
VM526 vm.js:1014 方法: toString 函数: addEventListener   结果: function addEventListener() { [native code] }
VM526 vm.js:1301 给 Proxy(HTMLDocument) {__cheng________: true} 增加了事件监听, 事件是 blur
VM526 vm.js:848 方法: get   对象: navigator   属性: __cheng________   属性值: true   属性值类型: boolean
VM526 vm.js:848 方法: get   对象: window   属性: navigator   属性值: Proxy(Navigator) {__cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: navigator   属性: platform   属性值: Win32   属性值类型: string
 方法: get   对象: window   属性: UA_Opt   属性值: {__cheng________: true}   属性值类型: object
 方法: get   对象: document   属性: createElement   属性值:    属性值类型: function
 方法: toString 函数: createElement   结果: function createElement() { [native code] }
 createElement script
 拦截 Map.set -> 设置键: HTMLScriptElement {} 值: Element {parent: Document, prev: null, next: null, startIndex: null, endIndex: null, …}
 拦截 Map.set -> 设置键: HTMLBodyElement {} 值: Element {parent: Element, prev: Text, next: null, startIndex: null, endIndex: null, …}
 方法: get   对象: document   属性: body   属性值: HTMLBodyElement {}   属性值类型: object
 拦截 Map.set -> 设置键: HTMLBodyElement {} 值: Element {parent: Element, prev: Text, next: null, startIndex: null, endIndex: null, …}
 方法: get   对象: document   属性: body   属性值: HTMLBodyElement {}   属性值类型: object
 方法: get   对象: body   属性: appendChild   属性值:    属性值类型: function
 方法: toString 函数: appendChild   结果: function appendChild() { [native code] }
 script .getAttribute( id ) ====> null
 方法: apply 函数: appendChild   传参: [HTMLScriptElement]   结果: HTMLScriptElement {}
 方法: get   对象: UA_Opt   属性: LogVal   属性值: undefined   属性值类型: undefined
 获取: UA_Opt 对象的自有属性键   结果: ['__cheng________']
 方法: get   对象: UA_Opt   属性: __cheng________   属性值: true   属性值类型: boolean
 setInterval  10
 方法: set   对象: window   属性: UA_Opt   属性值: HTMLScriptElement {__cheng________: true, _LogVal: undefined, _LogVals: {…}}   属性值类型: object
 方法: get   对象: window   属性: UA_Opt   属性值: HTMLScriptElement {__cheng________: true, _LogVal: undefined, _LogVals: {…}, getStatus: ƒ, resetSA: ƒ, …}   属性值类型: object
 方法: set   对象: window   属性: __acjs_awsc_140   属性值: {getUA: ƒ, isReadyForSC: ƒ, resetSA: ƒ, decryptJSON: ƒ, getVersion: ƒ}   属性值类型: object
 方法: get   对象: window   属性: AWSCInner   属性值: undefined   属性值类型: undefined
 方法: get   对象: window   属性: Date   属性值:    属性值类型: function
 方法: get   对象: window   属性: Math   属性值: Math {abs: ƒ, acos: ƒ, acosh: ƒ, asin: ƒ, asinh: ƒ, …}   属性值类型: object
 方法: get   对象: Math   属性: random   属性值:    属性值类型: function
 方法: apply 函数: random   传参: []   结果: 0.606842215788908
 方法: get   对象: window   属性: Date   属性值:    属性值类型: function
 方法: get   对象: document   属性: __cheng________   属性值: true   属性值类型: boolean
 方法: get   对象: window   属性: document   属性值: Proxy(HTMLDocument) {__cheng________: true}   属性值类型: object
 方法: get   对象: document   属性: visibilityState   属性值: visible   属性值类型: string
 方法: get   对象: navigator   属性: __cheng________   属性值: true   属性值类型: boolean
 方法: get   对象: window   属性: navigator   属性值: Proxy(Navigator) {__cheng________: true}   属性值类型: object
 方法: get   对象: navigator   属性: userAgent   属性值: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36   属性值类型: string
 方法: get   对象: document   属性: __cheng________   属性值: true   属性值类型: boolean
 方法: get   对象: window   属性: document   属性值: Proxy(HTMLDocument) {__cheng________: true}   属性值类型: object
 方法: get   对象: document   属性: getElementsByTagName   属性值:    属性值类型: function
 方法: toString 函数: getElementsByTagName   结果: function getElementsByTagName() { [native code] }
 document.getElementsByTagName( body )
 方法: apply 函数: getElementsByTagName   传参: ['body']   结果: HTMLCollection {0: HTMLBodyElement}
 方法: get   对象: getElementsByTagName的返回值   属性: 0   属性值: HTMLBodyElement {}   属性值类型: object
 方法: get   对象: document   属性: createElement   属性值:    属性值类型: function
 方法: toString 函数: createElement   结果: function createElement() { [native code] }
 createElement span
 拦截 Map.set -> 设置键: HTMLSpanElement {} 值: Element {parent: Document, prev: null, next: null, startIndex: null, endIndex: null, …}
 方法: get   对象: document   属性: createElement   属性值:    属性值类型: function
 方法: toString 函数: createElement   结果: function createElement() { [native code] }
 createElement div
 拦截 Map.set -> 设置键: HTMLDivElement {} 值: Element {parent: Document, prev: null, next: null, startIndex: null, endIndex: null, …}
 span .getAttribute( style ) ====> null
 方法: get   对象: 0   属性: appendChild   属性值:    属性值类型: function
 方法: toString 函数: appendChild   结果: function appendChild() { [native code] }
 span .getAttribute( id ) ====> null
 方法: get   对象: 0   属性: removeChild   属性值:    属性值类型: function
 方法: toString 函数: removeChild   结果: function removeChild() { [native code] }
 removeChild =>  HTMLSpanElement {__lin__style__: Proxy(CSSStyleDeclaration)}
 span .getAttribute( id ) ====> null
 方法: apply 函数: removeChild   传参: [HTMLSpanElement]   结果: HTMLSpanElement {__lin__style__: Proxy(CSSStyleDeclaration)}
 方法: get   对象: 0   属性: appendChild   属性值:    属性值类型: function
 方法: toString 函数: appendChild   结果: function appendChild() { [native code] }
 span .getAttribute( id ) ====> null
 方法: get   对象: 0   属性: removeChild   属性值:    属性值类型: function
 方法: toString 函数: removeChild   结果: function removeChild() { [native code] }
 removeChild =>  HTMLSpanElement {__lin__style__: Proxy(CSSStyleDeclaration), __cheng________: true}
 span .getAttribute( id ) ====> null
 方法: get   对象: 0   属性: appendChild   属性值:    属性值类型: function
 方法: toString 函数: appendChild   结果: function appendChild() { [native code] }
 span .getAttribute( id ) ====> null
 方法: get   对象: 0   属性: removeChild   属性值:    属性值类型: function
 方法: toString 函数: removeChild   结果: function removeChild() { [native code] }
 removeChild =>  HTMLSpanElement {__lin__style__: Proxy(CSSStyleDeclaration), __cheng________: true}
 span .getAttribute( id ) ====> null
 方法: get   对象: 0   属性: appendChild   属性值:    属性值类型: function
 方法: toString 函数: appendChild   结果: function appendChild() { [native code] }
 div .getAttribute( id ) ====> null
 方法: get   对象: 0   属性: removeChild   属性值:    属性值类型: function
 方法: toString 函数: removeChild   结果: function removeChild() { [native code] }
 removeChild =>  HTMLDivElement {}
 div .getAttribute( id ) ====> null
 方法: get   对象: window   属性: parseInt   属性值:    属性值类型: function
 方法: get   对象: window   属性: Math   属性值: Math {__cheng________: true, abs: ƒ, acos: ƒ, acosh: ƒ, asin: ƒ, …}   属性值类型: object
 方法: apply 函数: parseInt   传参: (2) ['00000001', 2]   结果: 1
 方法: apply 函数: parseInt   传参: (2) ['11111101', 2]   结果: 253
 方法: apply 函数: parseInt   传参: (2) ['00000000', 2]   结果: 0
 方法: apply 函数: parseInt   传参: (2) ['10100000', 2]   结果: 160
 方法: apply 函数: parseInt   传参: (2) ['01011100', 2]   结果: 92
 方法: apply 函数: parseInt   传参: (2) ['01010111', 2]   结果: 87
 方法: apply 函数: parseInt   传参: (2) ['10100001', 2]   结果: 161
 方法: apply 函数: parseInt   传参: (2) ['00101011', 2]   结果: 43
 方法: apply 函数: parseInt   传参: (2) ['10101001', 2]   结果: 169
 方法: apply 函数: parseInt   传参: (2) ['01111010', 2]   结果: 122
 方法: apply 函数: parseInt   传参: (2) ['00010101', 2]   结果: 21
 方法: apply 函数: parseInt   传参: (2) ['01010001', 2]   结果: 81
 方法: apply 函数: parseInt   传参: (2) ['10010101', 2]   结果: 149
 方法: apply 函数: parseInt   传参: (2) ['00000010', 2]   结果: 2
 方法: apply 函数: parseInt   传参: (2) ['01100000', 2]   结果: 96
 方法: apply 函数: parseInt   传参: (2) ['10011110', 2]   结果: 158
 方法: apply 函数: parseInt   传参: (2) ['10001101', 2]   结果: 141
 方法: apply 函数: parseInt   传参: (2) ['00110011', 2]   结果: 51
 方法: apply 函数: parseInt   传参: (2) ['10110100', 2]   结果: 180
 方法: apply 函数: parseInt   传参: (2) ['10111010', 2]   结果: 186
 方法: apply 函数: parseInt   传参: (2) ['00000011', 2]   结果: 3
 方法: apply 函数: parseInt   传参: (2) ['10111010', 2]   结果: 186
 方法: apply 函数: parseInt   传参: (2) ['00100000', 2]   结果: 32
 方法: apply 函数: parseInt   传参: (2) ['01101010', 2]   结果: 106
 方法: apply 函数: parseInt   传参: (2) ['00101100', 2]   结果: 44
 方法: apply 函数: parseInt   传参: (2) ['01010111', 2]   结果: 87
 方法: apply 函数: parseInt   传参: (2) ['00100001', 2]   结果: 33
 方法: apply 函数: parseInt   传参: (2) ['00001000', 2]   结果: 8
 方法: apply 函数: parseInt   传参: (2) ['11000001', 2]   结果: 193
 方法: apply 函数: parseInt   传参: (2) ['11010011', 2]   结果: 211
 方法: apply 函数: parseInt   传参: (2) ['00001111', 2]   结果: 15
 方法: apply 函数: parseInt   传参: (2) ['10000101', 2]   结果: 133
 方法: apply 函数: parseInt   传参: (2) ['10101000', 2]   结果: 168
 方法: apply 函数: parseInt   传参: (2) ['01101011', 2]   结果: 107
 方法: apply 函数: parseInt   传参: (2) ['00100011', 2]   结果: 35
 方法: apply 函数: parseInt   传参: (2) ['00001101', 2]   结果: 13
 方法: apply 函数: parseInt   传参: (2) ['10000000', 2]   结果: 128
 方法: get   对象: document   属性: __cheng________   属性值: true   属性值类型: boolean
 方法: get   对象: window   属性: document   属性值: Proxy(HTMLDocument) {__cheng________: true}   属性值类型: object
 方法: get   对象: document   属性: hasFocus   属性值:    属性值类型: function
 方法: toString 函数: hasFocus   结果: function hasFocus() { [native code] }
 方法: get   对象: document   属性: __cheng________   属性值: true   属性值类型: boolean
 方法: get   对象: window   属性: document   属性值: Proxy(HTMLDocument) {__cheng________: true}   属性值类型: object
 方法: get   对象: document   属性: hasFocus   属性值:    属性值类型: function
 方法: toString 函数: hasFocus   结果: function hasFocus() { [native code] }
 方法: get   对象: window   属性: Math   属性值: Math {__cheng________: true, abs: ƒ, acos: ƒ, acosh: ƒ, asin: ƒ, …}   属性值类型: object
 方法: get   对象: window   属性: PerformanceEntry   属性值: undefined   属性值类型: undefined
 方法: get   对象: document   属性: __cheng________   属性值: true   属性值类型: boolean
 方法: get   对象: window   属性: document   属性值: Proxy(HTMLDocument) {__cheng________: true}   属性值类型: object
 方法: get   对象: window   属性: Object   属性值:    属性值类型: function
 方法: get   对象: window   属性: performance   属性值: Performance {__cheng________: true}   属性值类型: object
 方法: get   对象: window   属性: Date   属性值:    属性值类型: function
 方法: get   对象: window   属性: Object   属性值:    属性值类型: function
 方法: get   对象: window   属性: PerformanceEntry   属性值: undefined   属性值类型: undefined
 方法: get   对象: window   属性: performance   属性值: Performance {__cheng________: true}   属性值类型: object
 方法: get   对象: window   属性: Math   属性值: Math {__cheng________: true, abs: ƒ, acos: ƒ, acosh: ƒ, asin: ƒ, …}   属性值类型: object
 调用正则的test方法,正则: /_n1t|_n1z|nocaptcha|-stage-1/ 源字符串: /nc_1_n1z/nc_iconfont btn_slide/nc_1_n1t/nc_scale/nc_1_wrapper/nc_wrapper/ 结果是 true
 方法: get   对象: navigator   属性: __cheng________   属性值: true   属性值类型: boolean
 方法: get   对象: window   属性: navigator   属性值: Proxy(Navigator) {__cheng________: true}   属性值类型: object
 方法: get   对象: navigator   属性: platform   属性值: Win32   属性值类型: string
 方法: get   对象: window   属性: parseInt   属性值:    属性值类型: function
 方法: get   对象: window   属性: Math   属性值: Math {__cheng________: true, abs: ƒ, acos: ƒ, acosh: ƒ, asin: ƒ, …}   属性值类型: object
 方法: get   对象: document   属性: __cheng________   属性值: true   属性值类型: boolean
 方法: get   对象: window   属性: document   属性值: Proxy(HTMLDocument) {__cheng________: true}   属性值类型: object
 拦截 Map.set -> 设置键: HTMLBodyElement {} 值: Element {parent: Element, prev: Text, next: null, startIndex: null, endIndex: null, …}
 方法: get   对象: document   属性: body   属性值: HTMLBodyElement {}   属性值类型: object
 方法: get   对象: document   属性: documentElement   属性值: HTMLHtmlElement {}   属性值类型: object
 方法: get   对象: window   属性: screen   属性值: Screen {}   属性值类型: object
 方法: get   对象: window   属性: screenLeft   属性值: 0   属性值类型: number
 方法: get   对象: window   属性: screenTop   属性值: 0   属性值类型: number
 方法: get   对象: screen   属性: availWidth   属性值: 1920   属性值类型: number
 方法: get   对象: screen   属性: width   属性值: 1920   属性值类型: number
 方法: get   对象: screen   属性: height   属性值: 1080   属性值类型: number
 方法: get   对象: window   属性: innerHeight   属性值: 911   属性值类型: number
 方法: get   对象: window   属性: outerWidth   属性值:    属性值类型: function
 方法: toString 函数: outerWidth   结果: function outerWidth() { [native code] }
 方法: get   对象: window   属性: innerWidth   属性值: 1920   属性值类型: number
 方法: toString 函数: outerWidth   结果: function outerWidth() { [native code] }
 方法: get   对象: window   属性: innerWidth   属性值: 1920   属性值类型: number
 方法: get   对象: documentElement   属性: clientWidth   属性值: 1920   属性值类型: number
 方法: get   对象: body   属性: clientWidth   属性值: 1920   属性值类型: number
 方法: get   对象: body   属性: clientHeight   属性值: 911   属性值类型: number
 方法: get   对象: window   属性: innerHeight   属性值: 911   属性值类型: number
 方法: get   对象: window   属性: outerHeight   属性值: 1032   属性值类型: number
 方法: get   对象: screen   属性: availHeight   属性值: 1032   属性值类型: number
 方法: get   对象: documentElement   属性: clientHeight   属性值: 911   属性值类型: number
 方法: get   对象: location   属性: __cheng________   属性值: true   属性值类型: boolean
 方法: get   对象: window   属性: location   属性值: Proxy(Location) {…}   属性值类型: object
 方法: get   对象: window   属性: __cheng________   属性值: true   属性值类型: boolean
 方法: get   对象: window   属性: top   属性值: Proxy(Window) {Function: Proxy(Function), Proxy: ƒ, eval: ƒ, e: ƒ, o: ƒ, …}   属性值类型: object
 方法: get   对象: document   属性: __cheng________   属性值: true   属性值类型: boolean
 方法: get   对象: window   属性: document   属性值: Proxy(HTMLDocument) {__cheng________: true}   属性值类型: object
 方法: get   对象: location   属性: href   属性值: https://xindafengche.souche.com/#/login?action=accountLogin   属性值类型: string
 方法: get   对象: document   属性: referrer   属性值: https://xindafengche.souche.com   属性值类型: string
 in检测:'__BROWSERTOOLS_DOMEXPLORER_ADDED' in window=>>false
 方法: get   对象: document   属性: __cheng________   属性值: true   属性值类型: boolean
 方法: get   对象: window   属性: document   属性值: Proxy(HTMLDocument) {__cheng________: true}   属性值类型: object
VM526 vm.js:863 in检测:'__IE_DEVTOOLBAR_CONSOLE_EVAL_RESULT' in document=>>false
VM526 vm.js:863 in检测:'__IE_DEVTOOLBAR_CONSOLE_COMMAND_LINE' in window=>>false
VM526 vm.js:848 方法: get   对象: navigator   属性: __cheng________   属性值: true   属性值类型: boolean
VM526 vm.js:848 方法: get   对象: window   属性: navigator   属性值: Proxy(Navigator) {__cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: navigator   属性: platform   属性值: Win32   属性值类型: string
VM526 vm.js:1251 调用match方法, 源字符串: String {'Win32'} 目标正则 /win/i 结果是 ['Win', index: 0, input: 'Win32', groups: undefined]
VM526 vm.js:848 方法: get   对象: navigator   属性: __cheng________   属性值: true   属性值类型: boolean
VM526 vm.js:848 方法: get   对象: window   属性: navigator   属性值: Proxy(Navigator) {__cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: navigator   属性: oscpu   属性值: undefined   属性值类型: undefined
VM526 vm.js:848 方法: get   对象: window   属性: ApplePaySession   属性值: undefined   属性值类型: undefined
VM526 vm.js:848 方法: get   对象: navigator   属性: platform   属性值: Win32   属性值类型: string
VM526 vm.js:848 方法: get   对象: window   属性: ApplePayError   属性值: undefined   属性值类型: undefined
VM526 vm.js:842 方法: get   对象: window   属性: Bluetooth   属性值: ƒ Bluetooth() {
        debugger;
        my_env.cheng_lin('window.Bluetooth ->', arguments, '记得补');
    }   属性值类型: function
VM526 vm.js:1014 方法: toString 函数: Bluetooth   结果: function Bluetooth() { [native code] }
VM526 vm.js:848 方法: get   对象: navigator   属性: platform   属性值: Win32   属性值类型: string
VM526 vm.js:848 方法: get   对象: navigator   属性: platform   属性值: Win32   属性值类型: string
VM526 vm.js:842 方法: get   对象: window   属性: BluetoothDevice   属性值: ƒ BluetoothDevice() {
        debugger;
        my_env.cheng_lin('window.BluetoothDevice ->', arguments, '记得补');
    }   属性值类型: function
VM526 vm.js:1014 方法: toString 函数: BluetoothDevice   结果: function BluetoothDevice() { [native code] }
VM526 vm.js:842 方法: get   对象: window   属性: BluetoothUUID   属性值: ƒ BluetoothUUID() {
        debugger;
        my_env.cheng_lin('window.BluetoothUUID ->', arguments, '记得补');
    }   属性值类型: function
VM526 vm.js:1014 方法: toString 函数: BluetoothUUID   结果: function BluetoothUUID() { [native code] }
VM526 vm.js:848 方法: get   对象: window   属性: ucapi   属性值: undefined   属性值类型: undefined
VM526 vm.js:848 方法: get   对象: window   属性: UCCoreJava   属性值: undefined   属性值类型: undefined
VM526 vm.js:848 方法: get   对象: navigator   属性: __cheng________   属性值: true   属性值类型: boolean
VM526 vm.js:848 方法: get   对象: window   属性: navigator   属性值: Proxy(Navigator) {__cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: navigator   属性: userAgent   属性值: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36   属性值类型: string
VM526 vm.js:1251 调用match方法, 源字符串: String {'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWeb…KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36'} 目标正则 /(Edge)\/([0-9\.]*)/ 结果是 null
VM526 vm.js:1251 调用match方法, 源字符串: String {'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWeb…KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36'} 目标正则 /(Chrome)\/([0-9\.]*)/ 结果是 (3) ['Chrome/136.0.0.0', 'Chrome', '136.0.0.0', index: 81, input: 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWeb…KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36', groups: undefined]
VM526 vm.js:848 方法: get   对象: window   属性: __$cdc7c2f8ab481c8964b__   属性值: undefined   属性值类型: undefined
VM526 vm.js:848 方法: get   对象: navigator   属性: __cheng________   属性值: true   属性值类型: boolean
VM526 vm.js:848 方法: get   对象: window   属性: navigator   属性值: Proxy(Navigator) {__cheng________: true}   属性值类型: object
VM526 vm.js:832 方法: get   对象: navigator   属性: plugins   属性值: PluginArray {0: Plugin, 1: Plugin, 2: Plugin, 3: Plugin, 4: Plugin, Chrome PDF Viewer: Plugin, Chromium PDF Viewer: Plugin, Microsoft Edge PDF Viewer: Plugin, PDF Viewer: Plugin, WebKit built-in PDF: Plugin}   属性值类型: object
VM526 vm.js:848 方法: get   对象: window   属性: ActiveXObject   属性值: undefined   属性值类型: undefined
VM526 vm.js:848 方法: get   对象: plugins   属性: length   属性值: 5   属性值类型: number
VM526 vm.js:832 方法: get   对象: plugins   属性: 0   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType}   属性值类型: object
VM526 vm.js:848 方法: get   对象: 0   属性: name   属性值: null   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 0   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 0   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 0   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 0   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 0   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 0   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 0   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: length   属性值: 5   属性值类型: number
VM526 vm.js:832 方法: get   对象: plugins   属性: 1   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType}   属性值类型: object
VM526 vm.js:848 方法: get   对象: 1   属性: name   属性值: null   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 1   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 1   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 1   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 1   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 1   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 1   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 1   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: length   属性值: 5   属性值类型: number
VM526 vm.js:832 方法: get   对象: plugins   属性: 2   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType}   属性值类型: object
VM526 vm.js:848 方法: get   对象: 2   属性: name   属性值: null   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 2   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 2   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 2   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 2   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 2   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 2   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 2   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: length   属性值: 5   属性值类型: number
VM526 vm.js:832 方法: get   对象: plugins   属性: 3   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType}   属性值类型: object
VM526 vm.js:848 方法: get   对象: 3   属性: name   属性值: null   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 3   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 3   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 3   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 3   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 3   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 3   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 3   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: length   属性值: 5   属性值类型: number
VM526 vm.js:832 方法: get   对象: plugins   属性: 4   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType}   属性值类型: object
VM526 vm.js:848 方法: get   对象: 4   属性: name   属性值: null   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 4   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 4   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 4   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 4   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 4   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 4   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: 4   属性值: Plugin {0: MimeType, 1: MimeType, application/pdf: MimeType, text/pdf: MimeType, __cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: plugins   属性: length   属性值: 5   属性值类型: number
VM526 vm.js:848 方法: get   对象: document   属性: __cheng________   属性值: true   属性值类型: boolean
VM526 vm.js:848 方法: get   对象: window   属性: document   属性值: Proxy(HTMLDocument) {__cheng________: true}   属性值类型: object
VM526 vm.js:848 方法: get   对象: document   属性: createElement   属性值: ƒ createElement(tag_name) {
        if (this instanceof Document) {
            my_env.cheng_lin("createElement", tag_name);
            let c_elem;
            let obj;
            switch (tag_na…   属性值类型: function
VM526 vm.js:1014 方法: toString 函数: createElement   结果: function createElement() { [native code] }
VM526 vm.js:9076 createElement canvas
VM526 vm.js:28 拦截 Map.set -> 设置键: HTMLCanvasElement {} 值: Element {parent: Document, prev: null, next: null, startIndex: null, endIndex: null, …}
VM526 vm.js:28 拦截 Map.set -> 设置键: HTMLCanvasElement {} 值: Canvas {type: 'image', stride: 0, width: 0, height: 0}
VM526 vm.js:11957 canvas .setAttribute( width 300 )
VM526 vm.js:11957 canvas .setAttribute( height 150 )
VM526 vm.js:28 拦截 Map.set -> 设置键: HTMLCanvasElement {} 值: CanvasRenderingContext2D {}
VM526 vm.js:28 拦截 Map.set -> 设置键: CanvasRenderingContext2D {} 值: CanvasRenderingContext2D {canvas: Canvas, pixelFormat: 'RGBA32', patternQuality: 'good', imageSmoothingEnabled: true, globalCompositeOperation: 'source-over', …}
VM526 vm.js:11957 canvas .setAttribute( width 400 )
VM526 vm.js:11494 canvas .getAttribute( style ) ====> null
VM526 vm.js:11957 canvas .setAttribute( height 60 )
VM526 vm.js:842 方法: get   对象: window   属性: Document   属性值: ƒ Document() {
    my_env.plugins.throw_error(TypeError, "Illegal constructor");
}   属性值类型: function
VM526 vm.js:1014 方法: toString 函数: Document   结果: function Document() { [native code] }
VM526 vm.js:848 方法: get   对象: window   属性: Object   属性值: ƒ Object() { [native code] }   属性值类型: function
VM526 vm.js:848 方法: get   对象: window   属性: Document   属性值: ƒ Document() {
    my_env.plugins.throw_error(TypeError, "Illegal constructor");
}   属性值类型: function
VM526 vm.js:1014 方法: toString 函数: Document   结果: function Document() { [native code] }
VM526 vm.js:848 方法: get   对象: window   属性: Object   属性值: ƒ Object() { [native code] }   属性值类型: function
VM526 vm.js:848 方法: get   对象: window   属性: Object   属性值: ƒ Object() { [native code] }   属性值类型: function
VM526 vm.js:842 方法: get   对象: window   属性: Error   属性值: ƒ (...args) {
            const err = new OriginalError(...args);
            if (err.stack) {
                my_env.plugins.handle_error(err);
            }
            return err;
        }   属性值类型: function
VM526 vm.js:1014 方法: toString 函数: Error   结果: function Error() { [native code] }
VM526 vm.js:1152 有错误, 处理后 Error
    at Object.construct (collina.js:944:38)
    at collina.js:29660:33
    at collina.js:29699:26
    at e (collina.js:31614:18)
    at collina.js:42051:1
    at Script.runInContext (collina:149:12)
    at collina.js:288:18
    at collina.js:508:16
    at collina.js:75:20
VM526 vm.js:945 方法: construct   函数: Error   传参: []   结果: Error
    at Object.construct (collina.js:944:38)
    at collina.js:29660:33
    at collina.js:29699:26
    at e (collina.js:31614:18)
    at collina.js:42051:1
    at Script.runInContext (collina:149:12)
    at collina.js:288:18
    at collina.js:508:16
    at collina.js:75:20
VM526 vm.js:832 方法: get   对象: window   属性: console   属性值: console {debug: ƒ, error: ƒ, info: ƒ, log: ƒ, warn: ƒ, …}   属性值类型: object
VM526 vm.js:842 方法: get   对象: console   属性: groupEnd   属性值: ƒ groupEnd() { [native code] }   属性值类型: function
VM526 vm.js:842 方法: get   对象: console   属性: context   属性值: ƒ context() { [native code] }   属性值类型: function
VM526 vm.js:848 方法: get   对象: console   属性: context   属性值: ƒ context() { [native code] }   属性值类型: function
VM526 vm.js:848 方法: get   对象: window   属性: parseInt   属性值: ƒ parseInt() { [native code] }   属性值类型: function
VM526 vm.js:848 方法: get   对象: window   属性: Math   属性值: Math {__cheng________: true, abs: ƒ, acos: ƒ, acosh: ƒ, asin: ƒ, …}   属性值类型: object
VM84 main.js:79 

140#W9OrVM05zzZbAQo24zps4pN8s9z1ghMSLlZi+Bwa4+rWKtU4XSRTRqL3/cEiKMB/L0ACjjokzPNTlp1zzXRYKJFFrFrxxLIoa6h/jVxFfml+N1p+AcyO8BKp8nyeUgPU8kgW/cWMTKgzGt65XJmAYXJSiv9yMpE1QYlCqW7QTgq2apiSXy7/Y2II5vAVwtqNUkwuuw488NNq74RER/mt6OK6lE9gTy7gbh7x/Vvle/jD9uRIK6mAa1ghVD5Mw6gJQ4JB2P6euHkHguzxzDzbVXE/lbc9GoYGN3JXzHOb2XU+l1+rq3XEdrvZrI7Zb6MVsJ+i+OBeUyPwEQLJ0wDGQQY6/hnwqzIlpFFoqzOqTJlBHTdWFYGecgkK3LwS/owuLgY53uDEORXcLTxzRrDCZWb0/3NgzcTmliO3mz61Rh6r8xVegDtb8Sz76MUNiV8KKjzhUuaJfrXH0ZbCQ1WaPly5MbpVeeUTYMTBN4vWOcZUyFXiK1EF/iAfi/Hs4BwUftVnAwXx/O3sNPsiftbH6y55zfavPm/RqAx8ZR8P38yX2mxnrxy4IWps4wCwbykMvpaOF/KojAupcykzwCZFlzK1Qpl5l9n/ip3oF+IRz0bDZSYbxdjs5bsKZgWtazzQc8wuulHpjhMyJeKK8qmeGtLuQ6v0COTb6ok06iproM9OZwRAfUgYjPCfvNRpOIT4blX06UZAUhClNWWrNY28yH0nqYEFsnUY4xJY69/laybJKbTCc2hGF5EHnf4ZDSn5qJWHdPPe6hCj6Q2BYd7gYwjlLCd0/3WRk0Uujd3DBGXN309c1dGD/VaLQxIy80RAtleUKXXmLwOXruZPqnTcKzBx7Bi5Szl4Mjavw+egNMK1i8gdUHG176lwVU8MjswSlf5NbdNr0cOo2cDDtYmZ7Jvaw0jp6uRr8oHzefIvNuXujJ/eVAJtgEwgEQwoQGHfPZWFDlCxTiHfbupVvT4oB239Jf63PR51SAdVm9yM2aqto5Ac0P6sZhz7xmyADFjUTE9hHIhd6RDx9fpa+CsMpimmcdRqTNBrHx2XYxB3GsJYj+igfVghz0KXUVAzHyNMuxie1wBlDRu3BkAUGDN7ullMbBFlwrn80c3LpwIzOjFvtYlybrHV7or1qlKhpGlfmzrWdt6FMT0lyIez9/wQM+vODhPKJj494zFcLK8wT+GEhSSOyO5TmiedjejRrMjPgOE6yD6zddD0JkN1/1SrJpDvnBAoWMWTdcNMuhMzz7f9/F4VHE/P+oRDqsesYxPV4f46R1OKe0FD9kCM6U90DYOaPAbrEXfE7V8fug7vH0vHOj6HVR4lkfhtqdLVlIFZuUEltslsl0EUxnyDb3ICjlSTA4jCXXYndvDPwCNCWwFZ4ac9PMBVA843uJo3X0XeCfWay8cuDD2pInzZTppX8V02U78r9g9p+F/8D46hZj+nnqPvwTwNrpr/r1fOtOcnceNKvZO+6MlSbSFcOskwhgMxxexgyARNZpPY27GM9UaEmwgkSS/orEkB0YnK6pd2SLuQR+t/u+NI1nMl3/H0i9OgwpV7EsH7pAMmdox4vPK/U3NaaluWGnoK7ZbZBJmNDGnjnZi5XuV98rsI5htz1tucS/m6lOX6DR0YoKPvIy7bL/IwoZF=
 

相关文章:

阿里140 补环境日志

所有属性值是 __cheng________ 都是我做的防止套代理 非140环境检测代码 这个日志绝大多数 是做和浏览器tostring结果 处理一致 方法: toString 函数: ...... 结果: ..... 当前代码补了事件和dom 实际手补 比这少些 下方为环境日志: VM526 vm.js:…...

uniapp map组件的基础与实践

UniApp 中的 map 组件用于在应用中展示地图,并且支持在地图上添加标记、绘制线条和多边形等功能。以下是一些基本用法: 1. 基本结构 首先,确保你在页面的 .vue 文件中引入了 map 组件。以下是创建一个简单地图的基本代码结构: <template><view class="con…...

在 Kali 上打造渗透测试专用的 VSCode 环境

Kali Linux 是渗透测试领域的首选操作系统&#xff0c;搭配一款高效的代码编辑器可以显著提升工作效率。Visual Studio Code&#xff08;VSCode&#xff09;以其轻量、强大的扩展性和跨平台支持&#xff0c;成为许多安全研究者的选择。本文将详细介绍如何在 Kali Linux 上安装 …...

《前端面试题:CSS3新特性》

CSS3新特性指南&#xff1a;从基础到实战详解 CSS3作为现代Web开发的核心样式标准&#xff0c;彻底改变了前端开发者的工作方式。它不仅解决了传统CSS的诸多痛点&#xff0c;还引入了强大的布局模型、动画系统和响应式设计能力。本文将全面解析CSS3的十大核心新特性&#xff0…...

极速互联·智控未来——SG-Can(FD)Hub-600 六通道CANFD集线器

工业通信的全维进化&#xff0c;CANFD高速网络的终极枢纽&#xff01; 核心革新 CANFD协议深度支持&#xff1a;名义波特率5K-1Mbps&#xff0c;数据域速率飙升至5Mbps&#xff08;较传统CAN提升5倍&#xff09;&#xff0c;开启位速率转换最低100Kbps&#xff0c;完美兼容新旧…...

OpenVINO环境配置--OpenVINO安装

TOC环境配置–OpenVINO安装 本节内容 OpenVINO 支持的安装方式有很多种&#xff0c;每一种操作系统以及语言都有对应的安装方法&#xff0c;在官网上有很详细的教程&#xff1a;   我们可以根据自己的需要&#xff0c;来点选环境配置和安装方法&#xff0c;然后网页会给出正…...

Linux top 命令 的使用总结

以下是 Linux top 命令 的使用总结,按功能分类整理,方便快速查询: 一、命令行参数 参数描述示例-d <秒数>设置刷新间隔时间top -d 2(每2秒刷新)-p <PID>监控指定进程IDtop -p 1234(仅显示PID为1234的进程)-u <用户名>显示指定用户的进程top -u root(…...

ajax学习手册

Ajax 通俗易懂学习手册 目录 Ajax 基础概念XMLHttpRequest 详解Fetch API (现代方式)处理不同数据格式错误处理和状态码Ajax 高级技巧实战项目案例最佳实践 Ajax 基础概念 什么是 Ajax&#xff1f; Ajax Asynchronous JavaScript And XML 通俗解释&#xff1a; Ajax 就像…...

Python爬虫实战:研究urlunparse函数相关技术

1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上的数据量呈现出指数级增长。如何从海量的网页数据中高效地获取有价值的信息,成为了学术界和工业界共同关注的问题。网络爬虫作为一种自动获取网页内容的技术,能够按照预定的规则遍历互联网上的网页,并提取出所需…...

[蓝桥杯]采油

采油 题目描述 LQ 公司是世界著名的石油公司&#xff0c;为世界供应优质石油。 最近&#xff0c;LQ 公司又在森林里发现了一大片区域的油田&#xff0c;可以在这个油田中开采 nn 个油井。 LQ 公司在这 nn 个油井之间修建了 n−1n−1 条道路&#xff0c;每条道路连接两个油井…...

OpenLayers 地图定位

注&#xff1a;当前使用的是 ol 5.3.0 版本&#xff0c;天地图使用的key请到天地图官网申请&#xff0c;并替换为自己的key 地图定位功能很常见&#xff0c;在移动端和PC端都需要经常用到&#xff0c;像百度、高德、谷歌都提供了方便快捷的定位功能。OpenLayers中也提供了定位的…...

黑龙江云前沿服务器租用:便捷高效的灵活之选​

服务器租用&#xff0c;即企业直接从互联网数据中心&#xff08;IDC&#xff09;提供商处租赁服务器。企业只需按照所选的服务器配置和租赁期限&#xff0c;定期支付租金&#xff0c;即可使用服务器开展业务。​ 便捷快速部署&#xff1a;租用服务器能极大地缩短服务器搭建周期…...

PyTorch中matmul函数使用详解和示例代码

torch.matmul 是 PyTorch 中用于执行矩阵乘法的函数&#xff0c;它根据输入张量的维度自动选择适当的矩阵乘法方式&#xff0c;包括&#xff1a; 向量内积&#xff08;1D 1D&#xff09;矩阵乘向量&#xff08;2D 1D&#xff09;向量乘矩阵&#xff08;1D 2D&#xff09;矩…...

论文解读:Locating and Editing Factual Associations in GPT(ROME)

论文发表于人工智能顶会NeurIPS(原文链接)&#xff0c;研究了GPT(Generative Pre-trained Transformer)中事实关联的存储和回忆&#xff0c;发现这些关联与局部化、可直接编辑的计算相对应。因此&#xff1a; 1、开发了一种因果干预方法&#xff0c;用于识别对模型的事实预测起…...

NoSQl之Redis部署

一、Redis 核心概念与技术定位 1. 数据库分类与 Redis 的诞生背景 关系型数据库的局限性 数据模型&#xff1a;基于二维表结构&#xff0c;通过 SQL 操作&#xff0c;强一致性&#xff08;ACID 特性&#xff09;&#xff0c;适合结构化事务场景&#xff08;如银行转账、订单管…...

学习设计模式《十二》——命令模式

一、基础概念 命令模式的本质是【封装请求】命令模式的关键是把请求封装成为命令对象&#xff0c;然后就可以对这个命令对象进行一系列的处理&#xff08;如&#xff1a;参数化配置、可撤销操作、宏命令、队列请求、日志请求等&#xff09;。 命令模式的定义&#xff1a;将一个…...

十三、【核心功能篇】测试计划管理:组织和编排测试用例

【核心功能篇】测试计划管理&#xff1a;组织和编排测试用例 前言准备工作第一部分&#xff1a;后端实现 (Django)1. 定义 TestPlan 模型2. 生成并应用数据库迁移3. 创建 TestPlanSerializer4. 创建 TestPlanViewSet5. 注册路由6. 注册到 Django Admin 第二部分&#xff1a;前端…...

手撕 K-Means

1. K-means 的原理 K-means 是一种经典的无监督学习算法&#xff0c;用于将数据集划分为 kk 个簇&#xff08;cluster&#xff09;。其核心思想是通过迭代优化&#xff0c;将数据点分配到最近的簇中心&#xff0c;并更新簇中心&#xff0c;直到簇中心不再变化或达到最大迭代次…...

SmolVLA: 让机器人更懂 “看听说做” 的轻量化解决方案

&#x1f9ed; TL;DR 今天&#xff0c;我们希望向大家介绍一个新的模型: SmolVLA&#xff0c;这是一个轻量级 (450M 参数) 的开源视觉 - 语言 - 动作 (VLA) 模型&#xff0c;专为机器人领域设计&#xff0c;并且可以在消费级硬件上运行。 SmolVLAhttps://hf.co/lerobot/smolvla…...

day45python打卡

知识点回顾&#xff1a; tensorboard的发展历史和原理tensorboard的常见操作tensorboard在cifar上的实战&#xff1a;MLP和CNN模型 效果展示如下&#xff0c;很适合拿去组会汇报撑页数&#xff1a; 作业&#xff1a;对resnet18在cifar10上采用微调策略下&#xff0c;用tensorbo…...

AIGC赋能前端开发

一、引言&#xff1a;AIGC对前端开发的影响 1. AIGC与前端开发的关系 从“写代码”到“生成代码”传统开发痛点&#xff1a;重复性编码工作、UI 设计稿还原、问题定位与调试...核心场景的AI化&#xff1a;需求转代码&#xff08;P2C&#xff09;、设计稿转代码&#xff08;D2…...

Web 3D协作平台开发案例:构建制造业远程设计与可视化协作

HOOPS Communicator为开发者提供了丰富的定制化能力&#xff0c;助力他们在实现强大 Web 3D 可视化功能的同时&#xff0c;灵活构建符合特定业务需求的工程应用。对于希望构建在线协同设计工具的企业而言&#xff0c;如何在保障性能与用户体验的前提下实现高效开发&#xff0c;…...

AI Agent开发第78课-大模型结合Flink构建政务类长公文、长文件、OA应用Agent

开篇 AI Agent2025确定是进入了爆发期,到处都在冒出各种各样的实用AI Agent。很多人、组织都投身于开发AI Agent。 但是从3月份开始业界开始出现了一种这样的声音: AI开发入门并不难,一旦开发完后没法用! 经历过至少一个AI Agent从开发到上线的小伙伴们其实都听到过这种…...

极空间z4pro配置gitea mysql,内网穿透

极空间z4pro配置gitea mysql等记录&#xff0c;内网穿透 1、mysql、gitea镜像下载&#xff0c;极空间不成功&#xff0c;先用自己电脑科学后下载镜像,拉取代码&#xff1a; docker pull --platform linux/amd64 gitea/gitea:1.23 docker pull --platform linux/amd64 mysql:5.…...

第三方测试机构进行科技成果鉴定测试有什么价值

在当今科技创新的浪潮中&#xff0c;科技成果的鉴定测试至关重要&#xff0c;而第三方测试机构凭借其独特优势&#xff0c;在这一领域发挥着不可替代的作用。那么&#xff0c;第三方测试机构进行科技成果鉴定测试究竟有什么价值呢&#xff1f; 一、第三方测试机构能提供独立、公…...

华为云Flexus+DeepSeek征文|基于华为云Flexus X和DeepSeek-R1打造个人知识库问答系统

目录 前言 1 快速部署&#xff1a;一键搭建Dify平台 1.1 部署流程详解 1.2 初始配置与登录 2 构建专属知识库 2.1 进入知识库模块并创建新库 2.2 选择数据源导入内容 2.3 上传并识别多种文档格式 2.4 文本处理与索引构建 2.5 保存并完成知识库创建 3接入ModelArts S…...

【数据结构】_排序

【本节目标】 排序的概念及其运用常见排序算法的实现排序算法复杂度及稳定性分析 1.排序的概念及其运用 1.1排序的概念 排序&#xff1a;所谓排序&#xff0c;就是使一串记录&#xff0c;按照其中的某个或某些关键字的大小&#xff0c;递增或递减的排列起来的操作。 1.2特性…...

《前端面试题:JS数据类型》

JavaScript 数据类型指南&#xff1a;从基础到高级全解析 一、JavaScript 数据类型概述 JavaScript 作为一门动态类型语言&#xff0c;其数据类型系统是理解这门语言的核心基础。在 ECMAScript 标准中&#xff0c;数据类型分为两大类&#xff1a; 1. 原始类型&#xff08;Pr…...

PPT转图片拼贴工具 v4.3

软件介绍 这个软件就是将PPT文件转换为图片并且拼接起来。 效果展示 支持导入文件和支持导入文件夹&#xff0c;也支持手动输入文件/文件夹路径 软件界面 这一次提供了源码和开箱即用版本&#xff0c;exe就是直接用就可以了。 软件源码 import os import re import sys …...

Chrome安装代理插件ZeroOmega(保姆级别)

目录 本文直接讲解一下怎么本地安装ZeroOmega一、下载文件在GitHub直接下ZeroOmega 的文件&#xff08;下最新版即可&#xff09; 二、安装插件打开 Chrome 浏览器&#xff0c;访问 chrome://extensions/ 页面&#xff08;扩展程序管理页面&#xff09;&#xff0c;并打开开发者…...