this 不能在执行期间被赋值,并且在每次函数被调用时 this 的值也有可能不同。在绝大多数情况下,函数的调用方式决定了 this 的值。

在非严格模式下,this 值总是指向一个对象;在严格模式下,this 可以是任意值。

ES5 引入了 bind 方法来设置 this 值,而不用考虑函数是如何被调用的。

ES2015 引入了 箭头函数,而箭头函数则不提供自身的 this 绑定。

1
2
3
4
5
6
7
8
9
10
11
// Expressions - this

const person = {
name: 'Randal',
getName: function() {
return this.name;
},
};

console.log(person.getName());
// expected output: Randal
阅读全文 »

有时候我们经常需要使用 Google 搜索资料,毕竟百度的搜索结果中有太多不相关的结果。但是 Google 搜索在大陆地区被墙了,找了好多梯子用都不太理想,最后发现了这个 Shadowsocks,效果很不错,推荐给大家。

Shadowsocks

价格也非常不错,一年才一百来块钱,每个月有 100G 的流量根本用不完,有兴趣的大家自行去看看 -> Shadowsocks

阅读全文 »

本文介绍了使用 Docker 镜像搭建 MediaWiki 的步骤和方法。借助 Docker 能非常方便的搭建个人维基站点,在数据的备份等维护操作上同样也很便利。使用 Docker 镜像搭建的维基站点,不会在宿主机上安装 LNMP 或 LAMP 环境,能始终保持宿主机的干净清爽。

阅读全文 »

本文转载自知乎大聪明罗翔老师谈人为什么害怕独处

人为什么害怕独处呢?

因为人在独处的时候,总是会听到心灵深处的声音,这个心灵深处的声音,会不断地逼问你:你这一生到底想干嘛?你怎样活着才是有意义的?当这个声音不断地逼问你的时候,你就会觉得烦躁,你就会觉得焦虑。因为你耳边始终有这种声音,所以你会堵住耳朵,你说别说了。

当这个声音沉静的时候,你会感到空虚,会感到迷茫。所以当你独处的时候,你始终是在焦虑、迷茫空虚中周而复始。那大部分的人呢,就会选择拒绝倾听你心灵深处的追问,于是,就会选择用忙碌来对抗这种声音——娱乐、工作、放纵,不断地忙碌来对抗自己心灵深处的追问,那只有当你真正地能够回答你心灵深处的那种追问,你才能够享受这种独处,你才能够享受这种宁静。

阅读全文 »

本篇介绍 TypeScript 实用类型中的 Extract 类型。看字面意思,Extract 是指取出挑出的意思,Extract 会挑选出传入的两个联合类型中相同的成员,将这些相同的成员构造成一个新类型,构造的新类型有可能是联合类型,也有可能是其他任何类型。

下面是一个简单的例子:

1
2
3
type U1 = "a" | "b" | "c";
type U2 = "a" | "f";
type T0 = Extract<U1, U2>;
阅读全文 »