#深入理解计算机系统

深入理解React中的setState

组件的状态是一种保存、处理和使用给定组件内部信息的方法,并允许你实现其自身的逻辑。状态本身其实是JavaScript中一个简单的对象(PlainOldJava[Script]Object),并且改变它是使组件重新进行渲染的几种方法之一。这是react背后最基本的思路之一,但是它(状态)有一些使用起来很棘手的属性,可能会...

理解JavaScript中的语法和代码结构

所有编程语言都必须遵守特定的规则才能运行。确定编程语言的正确结构的这组规则称为语法。许多编程语言主要由具有语法变化的类似概念组成。在本教程中,我们将介绍JavaScript语法和代码结构的许多规则和约定。 功能性和可读性在开始使用JavaScript时,功能性和可读性是关注语法的两个重要原因。有些语法规则是J...

Node.js 模块系统源码探微

Node.js 的出现使得前端工程师可以跨端工作在服务器上,当然,一个新的运行环境的诞生亦会带来新的模块、功能、抑或是思想上的革新,本文将带领读者领略Node.js (以下简称Node)的模块设计思想以及剖析部分核心源码实现。 CommonJS规范Node最初遵循CommonJS规范来实现...

深入JS继承

对于灵活的js而言,继承相比于java等语言,继承实现方式可谓百花齐放。方式的多样就意味着知识点繁多,当然也是面试时绕不开的点。撇开ES6class不谈,传统的继承方式你知道几种?每种实现原理是什么,优劣点能谈谈吗。这里就结合具体例子,按照渐进式的思路来看看继承的发展。 谈到js继承之前先回顾下js实例化对象...
代码星球 ·2020-12-24

web系统整体优化提速总结

随着公司业务的拓展,随之而来就是各种系统横向和纵向的增加,PV、UV也都随之增加,原有的系统架构和模式慢慢遇上了瓶颈,需要逐步的对系统从整体上进行改造升级,通过一段时间的整理思路,做一个简单的总结与分享。同时由于能力等方面的不足,如果有什么说的不好之处,还请各位大神多多指点。 本次调整提示主要从以下几个点进行...

快速打造 react 后台管理系统

前言相信很多小伙伴都有可能碰到开发后台管理系统这样的需求,那么我们该如何快速的完成这个需求呢本文将以 react 为切入点,记录打造一个基础管理系统模板的过程,以此加深对 react 技术栈以及项目实战的理解,希望对大家开发一个这样的项目有所帮助如果文章中有出现纰漏、错误之处,还...

Nodejs模块fs文件系统操作

node的fs文档密密麻麻的api非常多,毕竟全面支持对文件系统的操作。文档组织的很好,操作基本分为文件操作、目录操作、文件信息、流这个大方面,编程方式也支持同步、异步和Promise。本文记录了几个文档中没详细描写的问题,可以更好地串联fs文档思路:文件描述符同步、异步与Promise目录与目录项文件信息stream...

使用SVG symbols建立图标系统完整指南

从最开始的使用img图片,到后来的使用css sprite来减少服务器请求,再到流行的图形字体化图标Iconfont。现在,一种全新的图标使用方式开始流行了起来——SVGsymbols图标。 SVGsymbols的工作原理:symbol元素用来定义一个图形模板对象,它可以用一个use元素实例化。sy...

如何理解data URL?

canvas有一个非常常用的方法canvas.toDataURL(),它会将canvas转化为dataURL的格式。通常情况下这个dataURL的类型为image。看看下面的例子:<canvasid="canvas"height="2"width="2"></canvas>varcanvas=d...
代码星球 ·2020-12-24

深入理解 Node.js 中的 Worker 线程

多年以来,Node.js 都不是实现高CPU密集型应用的最佳选择,这主要就是因为 JavaScript 的单线程。作为对此问题的解决方案,Node.js v10.5.0通过 worker_threads 模块引入了实验性的“worker线程”概念,并从Node...

深入理解link和@import到底有什么区别?

在真正的前端开发中,我们很少去写行内样式和内嵌样式,通常都是去引用外部样式。而在我们学习之初的外部样式表都是用link引入的,但是当后来我们学习的逐渐深入,发现@import也可以引入样式。那么同样是引入外部样式,这两者有什么区别呢,下面请跟随我来详细了解一下link和@import的区别吧!  &...

计算机网络常见问题

 为了实现可靠数据传输,TCP协议的通信双方,都必须维护一个序列号,以标识发送出去的数据包中,哪些是已经被对方收到的。三次握手的过程即是通信双方相互告知序列号起始值,并确认对方已经收到了序列号起始值的必经步骤。如果只是两次握手,至多只有连接发起方的起始序列号能被确认,另一方选择的序列号则得不到确认。在SAC...
代码星球 ·2020-12-24

如何理解vue中的v-model?

说到v-model,就想到了双向数据绑定,而且往往最常见的是在表单元素<input>,<textarea>,<select>中的使用。那么为什么v-model双向数据绑定,自动更新元素呢?v-model在内部为不同的输入元素使用不同的属性并抛出不同的事件:text和textarea元...

如何理解vue中的v-bind?

如果你写过vue,对v-bind这个指令一定不陌生。下面我将从源码层面去带大家剖析一下v-bind背后的原理。会从以下几个方面去探索:v-bind关键源码分析v-bind化的属性统一存储在哪里:attrsMap与attrsList绑定属性获取函数 getBindingAttr和属性操作函数 getA...

一次 Linux 系统被攻击的分析过程

IT行业发展到现在,安全问题已经变得至关重要,从最近的“棱镜门”事件中,折射出了很多安全问题,信息安全问题已变得刻不容缓,而做为运维人员,就必须了解一些安全运维准则,同时,要保护自己所负责的业务,首先要站在攻击者的角度思考问题,修补任何潜在的威胁和漏洞。下面通过一个案例介绍下当一个服务器被rootkit入侵后的处理思路...
首页上一页...6364656667...下一页尾页