《面试系列》之什么是BFC?

面试时常常会被问到有关BFC的问题,虽然网上有关讲解BFC的文章很多,基本大篇理论知识,虽收获不少,但面对面试时,却不知如何回答,不能条理清晰、简单明了的回答出面试官想考察的内容,容易导致回答着把自己都给弄晕了(尤其在紧张的情绪下,非常容易导致越说越“乱”,从而造成面试官觉得你理解不到位的认知😭)。所以特此记录下来,一为了加深对BFC的理解,二则为了面试能更好的回答。

相关面试题

  1. 简述你对BFC规范的理解
  2. 对BFC规范(块级格式化上下文:block formatting context)的理解
  3. 如何创建块级格式化上下文(block formatting context),BFC有什么用
  4. 对BFC规范的理解?
  5. 等等

继续阅读全文 »

使用网格grid布局实现bootstrap的栅格系统

记得在接触Bootstrap框架的时候,主要就是被其栅格系统所吸引,对于当时构建一个响应式的网站特别方便,记得当时学Bootstrap还买了一些书(基本都是官网文档的复制黏贴😔),这就是英语太戳的弊端(想要学习一手资料还得好好学习英语)。最近在学习新技术grid布局,发现其用来实现栅格系统尤其方便,让我们一起coding吧。

继续阅读全文 »

阿里云Cetos安装Mysql

安装

1
2
3
4
$ yum install mysql
$ yum install mysql-devel
$ yum install mariadb-server mariadb # 因为甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险
# 但是mariadb和mysql是一样的

命令

1
2
3
4
5
6
$ systemctl start mariadb # 启动
$ systemctl stop mariadb # 停止
$ systemctl restart mariadb # 重启
$ systemctl enable mariadb # 开机启动

$ mysql -u root -p

配置

  • 设置编码
1
2
3
4
5
6
7
$ vim /etc/my.cnf

# 最后加上
[mysql]
default-character-set=utf8

$ systemctl restart mariadb # 重启
  • 设置密码(设置为root)
    1
    mysql> set password for 'root'@'localhost' =password('root');

此时外部服务器无法通过tomcat访问该服务器的数据库,需要设置:

1
mysql> grant all privileges on *.* to root@'%'identified by 'password';

并且需要添加安全组规则,开放3306端口

[转] 学习正则表达式

什么是正则表达式?

正则表达式是一组由字母和符号组成的特殊文本, 它可以用来从文本中找出满足你想要的格式的句子.

一个正则表达式是在一个主体字符串中从左到右匹配字符串时的一种样式.
“Regular expression”这个词比较拗口, 我们常使用缩写的术语”regex”或”regexp”.
正则表达式可以从一个基础字符串中根据一定的匹配模式替换文本中的字符串、验证表单、提取字符串等等.

继续阅读全文 »

如何解析template成VNODE

最近被问到,Vue2.0 中 template 是如何解析成 VNode
先变成 DOM 节点再通过深度优先遍历转成 VNode,
又瞎答说使用正则来解析,但是又给不出具体的思路。

恰逢周末,特地搜了一波,运气还不错,搜到了preact作者写的htm库,发现完全就是我想要的实现,而且简单,代码量少,不必直接阅读 Vue 或 React 源码。

代码量虽少,但对于我来说,还是不太好理解,所以打算记录学习该源码的过程,帮助和我一样读起来较困难的同学。😁

继续阅读全文 »

浅谈JS模块化和闭包

最近有被问到require import的区别模块间如果相互引用会发生什么等问题。

思考了一会,对于模块间相互引用,应该内部进行了处理,只是觉得应该,说不出一二三。而require则只说出是值复制,而import是引用。

发现自己在模块化方面了解的不多,赶紧搜资料恶补起来,并通过曾经的学习经历+恶补经历在这里记录下来。

继续阅读全文 »