第一百一十八篇: JavaScript 原型链式继承

好家伙,好家伙,本篇为《JS高级程序设计》第八章“对象、类与面向对象编程”学习笔记 1.原型链 原型链是JS实现"继承"的方案之一 ECMA-262把原型链定义为ECMAScript的主要继承方式。其基本思想就是通过原型继承多个引用类型的属性和方法。 重温一下构造函数、原型和实例的关系:每个构造函数

第121篇: DOM常用类型(Document、Element)

好家伙,本篇为《JS高级程序设计》第十四章“DOM编程”学习笔记 1.Document类型 Document 类型是 JavaScript 中表示文档节点的类型。 在浏览器中,文档对象 document 是 HTMLDocument 的实例(HTMLDocument 继承 Document),表示整

第122篇: JS函数一些基本概念

好家伙,本篇为《JS高级程序设计》第十章“函数”学习笔记 1.函数的三种定义方式:函数表达式、函数声明及箭头函数 函数声明: function sum(a) { return a + 1; } 函数表达式: let sum= function(a){ return a + 1; } 箭头函数: le

第123篇: JS函数属性与方法

好家伙,本篇为《JS高级程序设计》第十章“函数”学习笔记 ECMAScript 中的函数是对象,因此有属性和方法。 1.函数属性 每个函数都有两个属性:length 和 prototype。 length属性: 保存函数定义的命名参数的个数 prototype: toString()、valueOf

第124篇: 期约Promise基本方法

好家伙,本篇为《JS高级程序设计》第十章“期约与异步函数”学习笔记 1.异步编程 同步行为和异步行为的对立统一是计算机科学的一个基本概念。 特别是在 JavaScript 这种单线程事 件循环模型中,同步操作与异步操作更是代码所要依赖的核心机制。 异步行为是为了优化因计算量大而 时间长的操作。如果在

第125篇: 期约Promise基本特性

好家伙,本篇为《JS高级程序设计》第十章“期约与异步函数”学习笔记 1.非重入期约 1.1.可重入代码(百度百科) 先来了解一个概念 可重入代码(Reentry code)也叫纯代码(Pure code)是一种允许多个进程同时访问的代码。 为了使各进程所执行的代码完全相同,故不允许任何进程对其进行修

第126篇: 异步函数(async和await)

好家伙,本篇为《JS高级程序设计》第十章“期约与异步函数”学习笔记 ES8 的 async/await 旨在解决利用异步结构组织代码的问题。 为为此增加了两个新关键字:async 和 await。 1.async关键字 1.1.使用说明 async 关键字用于声明异步函数。 函数声明、函数表达式、箭

第128篇:浏览器存储(cookie、webStorage、 IndexedDB)

好家伙,本篇为《JS高级程序设计》第二五章“浏览器存储”学习笔记 我们先来讲个故事 一个“薅羊毛”的故事 (qq.com) 概括一下,就是 有个人通过网络平台非法购买了大量“cookie”数据。 突破平台封控,冒用他人新用户身份,非法骗取新用户优惠券。 拿着优惠券低价购入商品,随后转卖并从中赚取差价

第129篇:JS模块化开发

好家伙,本篇为《JS高级程序设计》第二十六章“模块”学习笔记 JS开发会遇到代码量大和广泛使用第三方库的问题。 解决这个问题的方案通 常需要把代码拆分成很多部分,然后再通过某种方式将它们连接起来。 若代码量较大,我们使用模块化开发的模式,也能够使代码容易维护 我们需要模块 1.模块模式 把逻辑分块,

第130篇:BOM(window对象)

好家伙,本篇为《JS高级程序设计》第十二章"BOM"学习笔记 什么是BOM? BOM(Browser Object Model) 是指浏览器对象模型,是用于描述这种对象与对象之间层次关系的模型, 浏览器对象模型提供了独立于内容的、可以与浏览器窗口进行互动的对象结构。 BOM由多个对象组成,其中代表浏

第133篇:事件处理与常用事件

好家伙,本篇为《JS高级程序设计》第十七章"事件"学习笔记 1.DOM0事件处理程序 在 JavaScript 中指定事件处理程序的传统方式是把一个函数赋值给(DOM 元素的)一个事件处理程 序属性。 添加点击事件: <正文> <脚本> le

NodeJS 实战系列:如何设计 try catch

本文将通过一个 NodeJS 程序里无效的错误捕获示例,来讲解错误捕获里常见的陷阱。错误捕获不是凭感觉添加 try catch 语句,它的首要目的是提供有效的错误排查信息,只有精心设计的错误捕获才有可能完成这个使命。针对哪些方面去精心设计就是本篇文章里想讨论的内容

逆向基础知识

逆向基础知识 1.逆向分析Hello World程序 源码 #include #include int main(int aggc, TCHAR *argv[]) { MessageBox(NULL, L"Hello World!", L"www.baid

[转帖]使用JMX服务监控Java程序性能

https://www.jianshu.com/p/3c3c836c1c20?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation 背景 单机收集服务器需要性能监控和测试。 JMX

[转帖][译] 使用 bcc/BPF 分析 Go 程序

https://toutiao.io/posts/089ydx/preview BCC 是基于 BPF 的 Linux IO 分析、监控、网络工具集合。BPF Compiler Collection (BCC) 是创建高效内核追踪和处理程序的工具包,包含几个有用的工具和用例。BCC 扩展了 BPF

[转帖]Linux 异步 I/O 框架 io_uring:基本原理、程序示例与性能压测

io_uring是 2019 年 Linux 5.1内核首次引入的高性能异步 I/O 框架,能显着加速 I/O 密集型应用的性能。但如果你的应用已经在使用传统 Linux AIO 了,并且使用方式恰当, 那io_uring并不会带来太大的性能提升—— 根据测试,即便打开高级特性,也只有 5%。除非你

[转帖]GDB调试core文件

在Linux环境下C程序经常会出现A segmentation fault(段错误),如果我们的程序只有几十行,那么我们可以通过printf输出调试来找到哪个地方出现了异常,但如果是在项目中,如果我们还是通过print找查找错误,那么效率会很低。那么我们来学习一下Linux环境下通过core文件来找

[转帖]jvm学习三-MAT内存分析工具的使用

目录 1 模拟内存溢出程序 1.1 jvm配置 1.2 测试代码 2 MAT工具进行内存分析 2.1 大纲介绍 2.2 Histogram视图介绍 2.3 Leak Suspects视图介绍 2.4 Dominator Tree 1 模拟内存溢出程序 1.1 jvm配置 -XX:+PrintGCDe

[转帖]Red Hat Enterprise Linux 8 和 9 中可用的 IO 调度程序

Red Hat 弃用了 Red Hat Enterprise Linux 7 中可用的 I/O 调度程序,并引入了四个新的 I/O 调度程序,如下所示, 运行以下命令检查 RHEL8 和 RHEL9 中可用的调度程序 # dmesg | grep -i scheduler [ 0.507104] i

[转帖]shell脚本实现文本内容比较交互程序

背景介绍 脚本基于Comm命令进行功能封装,考虑到命令执行前需要对文本进行排序,并且在多文件需要比较内容时可能会导致多个文本混乱,因此使用Shell封装成了一个交互式程序,快速对文件内容进行判断和输出想要的内容内容结果。 脚本介绍 文件内容校验(是否一致内容)定制化输出文本(1.仅文本单独出现内容;