想做技术博客,但却更喜欢分享生活。

  2017 年 05 月 - 5 文章

flex引起的子元素无法设置height: 100%的问题(safari & chrome)

flex布局无疑在移动端、PC端(ie10+)大大简化了前端的代码量,但是其存在的兼容性问题也不能被忽略,不同的浏览器解析flex的方式可能有所不同。用flex布局经常会发生一些奇怪的现象,而且flex套flex总是会觉得代码被污染…就很烦很难受。
这里着重分析了一种在safari和chrome两个浏览器下,对height: 100%的flex兼容性问题。

2017-05-06

你真的想学编程吗?

我是很赞成大家都来学编程的,脑子里一下能浮现出的赞成的理由就有:
1. 编程是把事物不断细分的过程,能够锻炼人的逻辑能力;
2. 编程需要一个清晰的思路,能锻炼人的思维能力;
3. 编程是一个创造的过程,能提高人的创造力;
4. 编程可以帮助人将重复的手工劳作转化成自动化的过程;

理解Javascript中的作用域与作用域链

任何程序设计语言都有作用域,简单的说,作用域就是变量或函数的可访问范围。作用域控制着变量与函数的可访问性与生命周期。
在绝大部分程序设计语言中,作用域的范围有全局作用域、函数作用域、块级作用域。
* 全局作用域:属于全局作用域的代码在任何地方都能访问到;
* 函数作用域:在定义该变量/函数的函数体内可以访问到;
* 块级作用域:在定义该变量/函数的语句块中可以访问到。

然而对于Javascript(ES5)来说,不存在块级作用域。

理一理Javascript的原型链

在Javascript中,大致存在两种对象:普通对象和函数对象。
一般而言,通过new Function()创建的对象是函数对象,其他的是函数对象。每当创建函数对象时,该对象中都会内置一些属性,其中包括prototype__proto__prototype即为原型对象
其内记录着函数对象的一些属性和方法。
prototype的主要作用是继承。prototype内定义的属性和方法都是留给自己的后代使用的。
说到后代,就必须说说js中的原型链。此时,另一个属性__proto__就登场了。