某志愿网js逆向
【基数排序算法详解】Java/Go/Python/JS/C不同语言实现
说明 基数排序(RadixSort)是一种非比较型整数排序算法,其原理是将整数按位数切割成不同的数字,然后按每个位数分别比较。由于整数也可以表达字符串(比如名字或日期)和特定格式的浮点数,所以基数排序也不是只能使用于整数。基数排序的发明可以追溯到1887年赫尔曼·何乐礼在列表机(Tabulation ......
【选择排序算法详解】Java/Go/Python/JS/C 不同语言实现
【选择排序算法详解】Java/Go/Python/JS/C 不同语言实现 说明 选择排序(Selection Sort)是一种简单直观的排序算法。跟冒泡、插入排序一样,它将数列分为已排序和待排序两个区间。首先在待排序序列中找到最小(或最大)的元素,追加到已排序序列中,然后继续从待排序序列中寻找最小( ......
【桥接设计模式详解】Java/JS/Go/Python/TS不同语言实现
【桥接设计模式详解】Java/JS/Go/Python/TS不同语言实现 简介 桥接模式(Bridge Pattern)是一种结构型设计模式,它将一个大类或一系列紧密相关的类拆分为抽象和实现两个独立的层次结构,来实现二者的解耦。参与桥接的接口是稳定的,用户可以扩展和修改桥接中的类,但是不能改变接口。 ......
【建造者设计模式详解】Java/JS/Go/Python/TS不同语言实现
简介 建造者模式(Builder Pattern),也叫生成器模式,属于创建型模式。它使用多个简单的对象一步一步构建成一个复杂的对象。它允许你使用相同的创建代码生成不同类型和形式的对象。 当你希望使用代码创建不同形式的产品 (例如各种商品和订单) 时, 一些基本部件不会变,而其组合经常变化的时候,就 ......
openwrt 断网重启检测脚本
背景 openwrt 有些固件不太稳定,会时不时的断网,导致家里无法上网,遇到这种情况只能手动重启openwrt设备,该操作不方便,作为一个极客爱好者,那肯定是要实现自动化处理的了,写一个简单的脚本加入到crontab定时任务中,就可完全自动化检测了,解放双手。 脚本思路 1、ping指定域名5次, ......
c# 递归应用 完成js文件自动引用
背景: 两张表,分别是 :sys_tbl,和 sys_field,其中:sys_tbl 是系统所有表的信息,包含两个字段 :code(表名),name(表描述信息);sys_fld 是记录第张表中的字段 的名称(field)和描述信息(table) , 截图如下: sys_tbl 其中,字段 名称包 ......
记一次 .NET某汽车零件采集系统 卡死分析
一:背景 1. 讲故事 前段时间有位朋友在微信上找到我,说他的程序会出现一些偶发卡死的情况,让我帮忙看下是怎么回事,刚好朋友也抓到了dump,就让朋友把 dump 丢给我,接下来用 windbg 探究下到底咋回事。 二:WinDbg 分析 1. 程序真的卡死吗 因为是一个 winform 程序,验证 ......
计网学习笔记三 MAC与LAN
在上一讲中,我们学习了链路层可以提供的服务😶:framing,link access,reliable delivery,error detection&correction。这一讲我们从link access中的broadcast接入方式深入,学习这种接入方式下的协议,以及衍生出的MAC地址,最 ......
计网学习笔记二 Link Layer Service
在上一周的计网学习了network和Internet的总论。在这一周开始的未来几讲将集中在链路层link layer,并且会有相应的计网lab完成。在这一讲中,我们主要关注链路层提供的服务。 课程资料地址:https://cs.nju.edu.cn/lwz/networks/CH2-Direct%2 ......
公司某资料子系统定期cpu过高的诊断
背景 公司里的某负责保存用户文档的子系统有时会忽然cpu很高,过了大约5分钟后又恢复正常水平。领导协调让我帮看一下 (我心里是: 不熟悉这个子系统里面的代码,我尽力哈😓) 其实确实是这样的,如果熟悉出问题的系统的代码,会对诊断问题起到很大的帮助,否则就需要更多的利用对底层的理解了。 分析 打听后知 ......
《爆肝整理》保姆级系列教程-玩转Charles抓包神器教程(11)-Charles如何模拟弱网环境
1.前言 张三:“我写的软件好奇怪啊,在网络好的时候一点问题也没有,但是信号差的时候明显卡顿,看来我只能一直蹲在卫生间、电梯或者地铁(信号差)调bug了”。 Charles:“哈哈哈,傻孩子,我就自带弱网工具呀,在Proxy-->Throttle Setting下,使用前要记得勾选Enable Th ......
一文带你了解 JS Module 的始末
写在前面 模块化开发是我们日常工作潜移默化中用到的基本技能,发展至今非常地简洁方便,但开发者们(指我自己)却很少能清晰透彻地说出它的发展背景, 发展过程以及各个规范之间的区别。故笔者决定一探乾坤,深入浅出学习一下什么是前端模块化。 通过本文,笔者希望各位能够收获到: 前端模块化发展的大致历史背景 � ......
MD5 简介 以及 C# 和 js 实现【加密知多少系列】
〇、简介 MD5 是哈希算法(散列算法)的一种应用。Hash 算法虽然被称为算法,但实际上它更像是一种思想。Hash 算法没有一个固定的公式,只要符合散列思想的算法都可以被称为是 Hash 算法。 算法目的就是,把任意长度的输入(又叫做预映射 pre-image),通过散列算法变换成固定长度的输出, ......
如何操作(增、删、改、查)常见的 HTML 元素呢?(包含原生 js 和 JQuery 语法对照)
一、通用的操作示例 1、查询 根据 id 查询(结果为单个对象) // 原生 js 写法 var elementobj = document.getElementById("elementid"); // 原生 js 链式查询写法(注意:被查询的对象需为单个唯一对象,若为 list 则返回失败) v ......
Node.js 未来发展趋势
Node.js 是一种非常有前途的后端技术,它具有高性能、高可扩展性和轻量级等优点。Node.js 还可以用来开发命令行工具和跨平台桌面应用程序等,具有非常广泛的应用场景。 ......
网页js版音频数字信号处理:H5录音+特定频率信号的特征分析和识别提取
音频数字信号处理 Audio DSP (Digital Signal Processing) 是一个复杂又专业的话题,本文介绍的是如何从音频中实时分析和识别出特定频率信号的一种方法,对应的代码为可运行在浏览器中的html5网页版(可移植);可用于识别环境中特定频率的声音、或噪声、乐器弹奏的音调。 在 ......
影片自由,丝滑流畅,Docker容器基于WebDav协议通过Alist挂载(百度网盘/阿里云盘)Python3.10接入
使用过NAS(Network Attached Storage)的朋友都知道,它可以通过局域网将本地硬盘转换为局域网内的“网盘”,简单理解就是搭建自己的“私有云”,但是硬件和网络成本都太高了,有点可望而不可及的意思。Alist开源库则可以满足我们,它能将公共网盘反过来变成一种联网的本地硬盘,使用We ......
浅谈JS原型
前言 JavaScript 原型是该语言中一个非常重要的概念。理解原型是理解 JavaScript 的关键。在本篇技术博客中,我们将深入探讨 JavaScript 的原型概念,并介绍常用的操作对象原型的方法。(欢迎点评,欢迎指正!) 什么是原型? 在 JavaScript 中,每个对象都有一个原型( ......
理解JS函数之call,apply,bind
前言 在 JavaScript 中,apply、bind 和 call 是三个重要的函数,它们都是 Function.prototype 的方法。这些函数可以让我们动态地改变函数的 this 值,或者传递参数来执行函数。本篇博客将详细介绍 apply、bind 和 call 的使用方法以及它们之间的 ......
【JavaScript】JS引擎中执行上下文如何顺序执行代码
首先我们知道JavaScript引擎包括一个调用栈和堆,调用栈是代码实际执行的地方,使用执行上下文(执行环境)来完成;堆是非结构化的内存池,存储了应用程序所需要的所有对象。 执行上下文是什么? 执行上下文包括全局执行上下文和执行上下文。 全局执行上下文:代码编译完成后进入调用栈执行首先创建全局执行上 ......
记一次 .NET 某医保平台 CPU 爆高分析
一:背景 1. 讲故事 一直在追这个系列的朋友应该能感受到,我给这个行业中无数的陌生人分析过各种dump,终于在上周有位老同学找到我,还是个大妹子,必须有求必应 😁😁😁。 妹子公司的系统最近在某次升级之后,在高峰期会遇到 CPU 爆高的现象,有些单位你懂的,很强势,所以就苦逼了程序媛,不管怎么 ......
记一次 .NET某家装ERP系统 内存暴涨分析
一:背景 1. 讲故事 前段时间微信上有一位老朋友找到我,说他的程序跑着跑着内存会突然爆高,有时候会下去,有什么会下不去,怀疑是不是某些情况下存在内存泄露,让我帮忙分析一下,其实内存泄露方面的问题还是比较好解决的,看过这个dump之后觉得还是有一定的分享价值,拿出来和大家分享一下吧。 二:WinDb ......
记一次 .NET 某游戏网站 CPU爆高分析
一:背景 1. 讲故事 这段时间经常有朋友微信上问我这个真实案例分析连载怎么不往下续了,关注我的朋友应该知道,我近二个月在研究 SQLSERVER,也写了十多篇文章,为什么要研究这东西呢? 是因为在 dump 中发现有不少的问题是 SQLSERVER 端产生的,比如:遗留事务,索引缺失 ,这让我产生 ......
计网学习笔记一 Networking && Internet
参考书籍: James F. Kurose, Keith W. Ross. 计算机网络—自顶向下方法 (7th). 机械工业出版社,2018. William Stallings. 数据与计算机 通信 (8th). 电子工业出版社 **课程网站地址:**https://cs.nju.edu.cn/l ......
Three.js 进阶之旅:物理效果-碰撞和声音 💥
本文内容主要汇总如何在 Three.js 创建的 3D 世界中添加物理效果,使其更加真实。所谓物理效果指的是对象会有重力,它们可以相互碰撞,施加力之后可以移动,而且通过铰链和滑块还可以在移动过程中在对象上施加约束。 通过本文的阅读,你将学习到如何使用 Cannon.js 在 Three.js 中创建... ......
如何优化 Vue.js 应用程序
单页面应用(SPAs)当处理实时、异步数据时,可以提供丰富的、可交互的用户体验。但它们也可能很重,很臃肿,而且性能很差。在这篇文章中,我们将介绍一些前端优化技巧,以保持我们的Vue应用程序相对精简,并且只在需要的时候提供必需的JS。 注意:这里假设你对Vue和Composition API有一定的熟 ......
js原型链污染详解
前言 之前打某湖论剑,两道js的题,给我整懵逼了,发现以前都没对js做过多少研究,趁着被毒打了,先研究一波js原型链,未雨绸缪。 基础 protype 首先我们研究js原型链,得搞明白原型是什么,这里借用p神的举的一个例子: 在javascript中,我们定义一个类,需要以定义“构造函数”的方式来定 ......
js函数中的this指向
写代码的时候遇到这个问题了,在这里复习一下 2023.3.09:忽然发现写的有点绕口,再总结一下,普通函数this指向调用他的那个对象(动态的,this不是一定的),箭头函数this指向其父级作用域上下文(静态的,定义时就确定) 大家可以自己试一试,有问题随时交流 非箭头函数 非箭头函数的this指 ......
Node.js 应用全链路追踪技术——全链路信息存储
本文主要介绍在Node.js应用中, 如何用全链路信息存储技术把全链路追踪数据存储起来,并进行相应的展示,最终实现基于业界通用 OpenTracing 标准的 Zipkin 的 Node.js 方案。 ......