前端网站SEO执行策略

SEO ( Search Engine Optimization )搜索引擎优化在搜索引擎时代对于网站来讲意义重大。一个网站,不管是小站还是大站,都离不开搜索引擎的流量导入,所以,做好 SEO 一直都是网站站长\开发者一门重要的功课。

上万的数据如何在前端页面快速展示?

前端要呈现百万数据,这个需求是很少见的,但是展示千条稍微复杂点的数据,这种需求还是比较常见,只要内存够,javascript 肯定是吃得消的,计算几千上万条数据,js 效率根本不在话下,但是 DOM 的渲染浏览器扛不住,CPU 稍微搓点的电脑必然会卡爆。
首先,这种情况很少见。如果要在前端呈现大量的数据,一般的策略就是分页。虽然这么说,但是如果展示上百条数据,图片资源消耗,也会让页面发生卡顿。

Javascript call apply bind

来源

继承自Function.prototype中的,所以这三个方法都可以在对象,数组,函数中使用。

1
2
3
4
5
6
console.log(Function.prototype.hasOwnProperty('call'))
// true
console.log(Function.prototype.hasOwnProperty('apply'))
// true
console.log(Function.prototype.hasOwnProperty('bind'))
// true

JavaScript currying

在计算机科学中,柯里化(英语:Currying),又译为卡瑞化加里化,是把接受多个参数的函数变换成接受一个单一参数(最初函数的第一个参数)的函数,并且返回接受余下的参数而且返回结果的新函数的技术。这个技术由克里斯托弗·斯特雷奇以逻辑学家哈斯凯尔·加里命名的,尽管它是Moses Schönfinkel戈特洛布·弗雷格发明的。

高阶函数的特点:

  1. 函数可以作为参数被传递;
  2. 函数可以作为返回值输出。
1
2
3
4
5
6
7
var foo = function(a) {
return function (b) {
return function (c) {
return a+b+c;
};
};
};

JavaScript RegExpObjects 正则表达式

一个个音符杂乱无章的组合在一起,弹奏出的或许就是噪音,同样的音符经过作曲家的手,就可以谱出非常动听的乐曲,一个演奏者同样可以照着乐谱奏出动听的乐曲,但他/她或许不知道该如何去改变音符的组合,使得乐曲更动听。
作为正则的使用者也一样,不懂正则引擎原理的情况下,同样可以写出满足需求的正则,但是不知道原理,却很难写出高效且没有隐患的正则。所以对于经常使用正则,或是有兴趣深入学习正则的人,还是有必要了解一下正则引擎的匹配原理的。

页面生命周期

DOMContentLoaded

浏览器已经完全加载了HTML,DOM树已经构建完毕,但是像是 和样式表等外部资源可能并没有下载完毕。

1
2
3
document.addEventListener("DOMContentLoaded", function() {
console.log('DOMContentLoaded')
})

JavaScript Introduction 简介

JavaScript是面向Web的编程语言,绝大多数现代网站都使用了JavaScript,并且所有的现代Web浏览器(电脑,手机,平板)均包含了JavaScript解释器。
这使得JavaScript能够称得上史上使用最广泛的编程语言。JavaScript也是前端开发工程师必须掌握的三种技能之一:描述网页内容的HTML、描述网页样式的CSS、以及描述网页行为的JavaScript。

Git Workflows

概要

随着团队不断的壮大,业务流程迭代。代码工作流的规范是显而易见的。为了保证开发速度,我们不断改进完善这个发布流程,让这个过程更简单、高效。
这篇指南以大家在SVN中已经广为熟悉使用的集中式工作流作为起点,循序渐进地演进到其它高效的分布式工作流,还介绍了如何配合使用便利的Pull Request功能,体系地讲解了各种工作流的应用。
在阅读过程中,请记住这些工作流是指导原则,而不是具体规则。我们想向您展示什么是可能的,因此您可以混合和匹配来自不同工作流的方面,以满足您的个人需求。

常见问题:

  1. 我们以使用SVN的工作流来使用Git有什么不妥?
  2. 如何控制开发版本?
  3. Git方便的branch在哪里,团队多人如何协作?冲突了怎么办?如何进行发布控制?
  4. 经典的master-发布、develop-主开发、hotfix-bug修复如何避免代码不经过验证上线?
  5. 如何在GitHub上面与他人一起协作,star-fork-pull request是怎样的流程?
,