0%

这篇文章将介绍 JWT(JSON Web Token)的基础知识,并通过一个实际例子加深对 JWT 的理解。

阅读全文 »

这篇文章主要学习在渗透测试中如何进行信息收集。文本的核心目的是学习 渗透测试中信息收集 的相关技术,任何人员如果使用这些技术从事违法活动,与本人无关。一定牢记,任何未授权的渗透测试都是非法行为

阅读全文 »

Node 是 JavaScript 与底层操作系统绑定的结合,因而可以让 JavaScript 程序读写文件、执行子进程,以及实现网络通信,为此 Node 得到了广泛应用。Node 的典型特点是由其默认异步的 API 赋能的单线程基于事件的并发能力。

阅读全文 »

JavaScript 创造于 1994 年,其明确的目的就是为浏览器显示的文档赋予动态行为。今天,Web 对 JavaScript 程序员而言已经是一个完善的应用开发平台。我们通常所说的 JavaScript 指的就是在浏览器中运行的 JavaScript 代码。与之相对的是 服务器端 代码,也就是运行在服务器上的程序。客户端和服务器端经常也被称为 前端后端

阅读全文 »

如果说常规编程是写代码去操作数据,那么元编程就是写代码去操作其他代码。在像 JavaScript 这样的动态语言中,编程与元编程之间的界限是模糊的。在更习惯于静态语言的程序员眼里,即便是迭代对象属性的 for/in 循环这个小小的能力都可能被打上 标签。

阅读全文 »

有些计算机程序(例如科学模拟和机器学习模型)属于计算密集型,这些程序会持续不断地运行,不会暂停,直到计算出结果为止。不过,大多数现实中的计算机程序则明显是异步的,这意味着它们常常必须停止计算,等待数据到达或某个事件发生。

这种异步编程在 JavaScript 中是司空见惯的,这篇文章将介绍三种重要的语言特性,可以让编写异步代码更容易。

阅读全文 »

可迭代对象及其相关的迭代器是 ES6 的一个特性,数组(包括 Typed Array)、字符串、Set 对象和 Map 对象都是可迭代的。这意味着可以通过 for/of 循环来迭代它们,... 运算符能够扩展 可迭代对象,迭代器可以用于结构赋值。而且有些接收 Array 对象的内置函数/构造函数也可以接收任意迭代器。

本章解释迭代器的原理,并展示如何创建可迭代的数据结构。理解迭代后,再学习生成器,它是 ES6 的一个新特性,用于简化迭代器的创建。

阅读全文 »

模块化编程的目标是能够用不同作者和来源的代码模块组装成大型程序。实践中,模块化的作用主要体现在封装和隐藏私有实现细节,以及保证全局命名空间清洁上,因而模块之间不会意外修改各自定义的变量、函数和类。

阅读全文 »