FrankKai

Results 350 comments of FrankKai

### leetcode 对撞指针 解法题目 - 7.整数反转(easy) - 9.回文数(easy) - 27.移除元素(easy) - 125.验证回文串(easy) - 167.两数之II-输入有序数组(easy) - 190.颠倒二进制位(easy) - 344.反转字符串(easy) - 345.反转字符串中的元音字母(easy) - 11.盛水最多的容器(medium) #### 7.整数反转(easy) 题目:https://leetcode-cn.com/problems/reverse-integer/ 题解:https://github.com/FrankKai/leetcode-js/blob/master/7.Reverse_Integer.js ```js var reverse =...

### app.use为什么可以添加一个又一个中间件? ```js app.use(function middleware1(req, res, next) { // middleware 1 next(); }); app.use(function middleware2(req, res, next) { // middleware 2 next(); }); ``` connect维护了一个**中间件栈(middleware stack)** 数据结构:栈(stack) **每次调用use,都会向这个应用(app)实例的栈(stack)推入一个带路径和处理函数的对象。** 源码: ```js...

### connect是如何区分普通中间件和错误中间件的? ```js // regular middleware app.use(function (req, res, next) { next(new Error('boom!')); }); // error middleware app.use(function onerror(err, req, res, next) { // an error occurred! }); ``` JavaScript的函数的长度属性:length。...

### 中间件处理函数中的next指代的又是什么? 指代的是栈中的下一个中间件。 ```js proto.handle = function handle(req, res, out) { var index = 0; var stack = this.stack; // ... function next(err) { // next callback var layer =...

### mac OS `ls -A` 查看包含隐藏文件的所有文件,不包含. .. 。 `ls -a`查看包含隐藏文件的所有文件,包含. .. 。 `chmod 4755 filename`赋予文件root权限 `chmod 711 file`赋予当前用户**读,写,执行**文件的权限 `man command` 查看命令详情 `ls -l`查看文件(夹)权限 `ls -al`查看包含隐藏文件的所有文件的文件名和属性 `ls -lT`查看完整的文件最后修改日期 `groups`当前用户所属组 `groups username`用户所属组...

### Linux - 修改文件owner `sudo chown frank filename` - 修改文件夹及其子文件owner `sudo chown -R frank projectDirectory` -R recursive 递归目录 - 修改文件权限 `sudo chmod 644 filename` 4 read , 2 write, 1...

### windows - hosts文件地址 c:\windows\system32\drivers\etc - 查看网卡信息 ``` ipconfig /all ```

### 深入理解inline 元素 在HTML中,行内元素是那些仅仅占据定义元素边界的标签空间的元素,而不是去破坏内容流。在这篇文章中,我们将检查HTML行内元素并且与block做对比。 > 一个行内元素不会在a new line开始,而且仅仅占据必要的元素宽度空间,不会多占空间。 ### inline vs block-level 元素:示范 用一个简单例子来示范就好。 ``` .highlight { font-weight:bold; } ``` **Inline** 首先,让我们看一下下面的inline元素的示范: ``` The following span is an inline element;...

### 深入理解block-level元素 HTML元素通常要么是"block-level"元素,要么是"inline elements"。 - 一个block-level元素,会占据它的父元素,也就是容器的全部空间,从而新建了一个"block"。这篇文章帮助我们去解释这意味着什么。 浏览器一般会在block-level元素前后展示一个新行。我们可以把它想象成一个box stack(盒子栈)。 >一个block-level元素通常从一个新的行开始,占据可用空间的全部宽度。(从左到右尽可能的拉伸)。 下面的例子示范了block-level元素的影响: **HTML** `This paragraph is a block-level element; its background has been colored to display the paragraph's parent element.` **CSS** `p...

### 深入理解display属性 display CSS属性指明了元素渲染盒子的类型。在HTML中,默认display属性值取自HTML规范或浏览器/用户默认样式表中描述的行为。XML默认值是inline,包括SVG元素也是。 除了各种各样的display盒类型之外,none 值使得你关闭元素的展示。当你使用none,所有的后裔元素也都关闭了展示。**尽管element不能在document tree中展示,但是它依然会被渲染。** 关于display值,有以下几种分类: - `` 指明了元素外部的展现类型,这基本是它在流式布局中的作用。例如inline,block - `` 指明了元素内部的展现类型,定义了布局formatting context的类型(假设它是一个不可替换的元素)。例如table,flex,grid - `` 元素生成了用来存放内容的块盒子以及一个分离的list-item行内盒子。例如list-item - `` 一些布局模型,例如table和ruby,有复杂的内部结构,有几个不同的角色,他们的孩子和后代可以填补。这一步跟定义了那些"internal"display值,它只在特定的layout mode下才生效。 除非有特殊声明,否则inner和outer display类型都可以设置为下面的关键字。 例如:table-row-group,table-header-group等等 - `` 是否展示box。例如none,contents(实验中) - ``...