DaraW

Code is Poetry

JavaScript中的继承

最近在按照vue.js的历史commit依次阅读代码来学习和了解vue.js。
在读到commit 5ce3b82时,发现这个时候尤大把Seed组件类抽象了出来,并提供了extend的接口可以自定义组件类,而自定义组件类继承于父类Seed

JavaScript中函数的变量提升

整理文件时偶然发现了一个讲JS预编译的PDF,仔细一看其实讲的是变量提升。文件中的一段代码有点无法理解:

1
2
3
4
5
6
7
8
9
var f = function () {
console.log('1');
}

function f() {
console.log('2');
}

f(); // 1

控制台输出的是1,按照道理JS没有重载,下一个函数应该会覆盖上一个同名函数,但是为什么输出的是1呢?

记一次前端性能优化实战

前言

这学期开学时去找了信息化中心的老师,说明了自己想往Node和Python方向走的想法,退出了信息化中心的学生工作室。
然而上周六老师又找到了我,他们对一个电商网站项目的前端性能很不满意,希望我能给他们做一套性能优化方案。

The Little Prince

“什么叫‘驯服’呢?”

“这是已经早就被人遗忘了的事情,”狐狸说,“它的意思就是‘建立联系’。”

将setTimeout函数队列

问题

先来看一段代码:

1
2
3
4
5
6
7
8
9
10
11
setTimeout(function() {
console.log('3000ms');
}, 3000);

console.log('first');

setTimeout(function() {
console.log('1000ms');
}, 1000);

console.log('second');

控制台输出为:

1
2
3
4
first
second
1000ms
3000ms

如果我们想让第一个定时器的回调函数执行完再执行第二个定时器的回调函数该怎么做呢?

Proudly powered by Hexo and Theme by Hacker
© 2018 DaraW