- 博客(75)
- 资源 (2)
- 收藏
- 关注
原创 CSS flex 盒子在 Chrome 和 Safari 中的行为差异
分析与解决 flex 盒子在 Chrome 和 Safari 中的行为差异问题
2021-07-05 15:43:53
1461
原创 React 组件性能优化之 PureComponent 的使用
在 React 类组件中,如果状态(state)发生变化,便会触发组件的重新渲染(执行 render 方法),并且是包括所有子组件在内的全部重渲染,无论某些子组件是否有用到 state 中的值;但有些时候部分子组件计算或渲染工作量较大,并且只做一些情况单一的展示工作,那么在更新状态时对其的渲染,便是额外的性能负担,所以需要寻求一些优化手段;这里以一个简单的计数器组件为例,正常书写的组件代码可以是这样的:class Counter extends React.Component { state = {
2021-05-09 14:42:17
1110
2
原创 TypeScript 中类型 any,void,unknown,never之间的区别
分析对比 ts 中基本类型 any, void, unknown, never之间的区别
2021-04-03 10:11:17
6313
原创 Linux中sudo免密码
文章出自个人博客https://knightyun.github.io/2019/06/20/sudo-nopasswd,转载请申明平时在 Linux 中执行一些命令时,可能会遇到 Permission denied 这样的提示,即该用户没有权限;所以一般会想到在命令最前面加上 sudo 后再执行,然后有可能会提示输入当前用户的密码;再接下来,如果命令没有正常执行,一般又会提示:user...
2019-06-20 21:54:38
7848
原创 JavaScript事件循环
文章出自个人博客 https://knightyun.github.io/2019/06/20/js-event-loop,转载请申明。运行时(Runtime)一个 JavaScript 运行时包含 栈(stack), 堆(heap), 队列(queue);栈 (stack)栈 具有 先进后出 (FILO, First In Last Out) 的特点,有时也叫做 堆栈,可以理解为一个...
2019-06-20 20:18:27
271
原创 JavaScript实现元素全排列
文章出自个人博客 https://knightyun.github.io/2019/05/11/js-permutation,转载请申明。排列 (Permutation / Arrangement)概念n 个不同元素中任意选取 m (m <= n) 个元素进行排列,所有排列情况的个数叫做 排列数,其值等于:A = n! / (n - m)!! 表示数学中的阶乘运算符,可以通过...
2019-05-11 22:25:35
761
原创 JavaScript之常见算法排序
文章出自个人博客 https://knightyun.github.io/2019/05/01/js-sort,转载请申明。冒泡排序冒泡排序即从头到尾依次比较相邻两数的大小,不符合顺序则交换位置,一直循环直到排序完成;但方便程序编写的做法是,从第一个到最后一个数,每个数分别与排在后面每个数进行比较和交换位置;// 输入值 arr 为需要排序的数组// 后面的代码类似function...
2019-05-02 08:50:13
171
原创 JavaScript面向对象编程
文章出自个人博客 https://knightyun.github.io/2019/05/01/js-oop,转载请申明。概述面向对象编程思想,顾名思义,即模仿现实世界的存在物,一切节对象,拥有各自的特性与行为,如人类,外貌、肤色、身高、体重等是其特征,能吃饭睡觉行走是其行为;同样,编程中,一个对象拥有 属性(key/property),相当于人类的特征,当然这些属性一般都有 属性值(v...
2019-05-02 08:44:44
165
原创 ECMAScript 发展简史
文章出自个人博客 https://knightyun.github.io/2019/05/01/js-ecmascript-history,转载请申明。ECMAScript,简称 ES,是 JavaScript 的标准版,经历了不同版本的变化;最初由于网速慢,网页验证表单需要通过服务器完成,因此Netscape(网景)公司决定开发这样一种用于处理验证的客户端语言;1995年,...
2019-05-01 23:23:09
586
原创 JavaScript之call,bind,apply方法及 this 的用法辨析
文章转自个人博客 https://knightyun.github.io/2019/05/01/js-call,转载请申明。概述JavaScript函数中的三个方法.call(), .apply(), .bind(),总体来说主要功能就是改变函数中 this 关键字的指向,因为 this 默认指向 当前环境的对象;例如:var obj = { name: 'Knight', ...
2019-05-01 23:20:11
496
原创 个人博客网站添加文章搜索功能
文章转自个人博客:https://knightyun.github.io/2019/03/04/articles-search,转载请申明现在很多网站页面里都有搜索模块,包括在线搜索、站内搜索等等,尤其是博客类网站,文章搜索功能就显得比较重要,现在以个人博客网站为例,详细介绍如何给页面添加搜索功能模块,至于如何搭建个人博客网站,可以参考这篇文章:https://knightyun.githu...
2019-03-04 22:08:31
7410
6
原创 Kali Linux 自定义分辨率
文章出自个人博客https://knightyun.github.io/2019/01/27/linux-xrandr,转载请申明Kali中无分辨率1920 x 1080,自定义的步骤:方法一控制台输入:cvt 1920 1080会得到以下内容:# 1920x1080 59.96 Hz (CVT 2.07M9) hsync: 67.16 kHz; pclk: 173.00 MHz...
2019-01-28 10:14:10
7125
1
原创 编程范式之命令式与函数式
文章出自个人博客https://knightyun.github.io/2019/01/27/programming-paradigm,转载请申明文章目录命令式编程(Imperative)函数式编程/声明式(Functional/Declarative)函数合成函数柯理化(Currying)很多语言是聚范式/多重范式编程,即支持多在编程范式,如面向对象(Java),面向过程(C语言),泛...
2019-01-28 10:13:47
679
原创 Linux强行取消挂载
文章出自个人博客https://knightyun.github.io/2019/01/27/linux-umount,转载请申明Linux系统有时需要取消挂载一些设备或者目录,例如:# /dev/sdb挂载到了 /mnt/usbumount /mnt/usb但是多半会提示:umount: /mnt/usb: target is busy如果已备份了数据需要强行卸载,并且尝试...
2019-01-27 22:41:05
10481
原创 Linux中apt install的lock问题
文章出自个人博客https://knightyun.github.io/2019/01/27/linux-apt-lock,转载请申明Linux系统中有时执行 apt install 时,可能会显示以下问题:E: 无法获得锁 /var/lib/dpkg/lock - open (11: 资源暂时不可用)E: 无法锁定管理目录(/var/lib/dpkg/),是否有其他进程正占用它?根...
2019-01-27 22:38:04
2196
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人